home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / forth / pfe-0.001 / pfe-0~
Encoding:
Text File  |  1995-07-17  |  131.5 KB  |  4,122 lines

  1. diff -cbr pfe-0-9.12/CHANGES pfe-0.9.13/CHANGES
  2. *** pfe-0-9.12/CHANGES    Thu Apr 27 21:00:42 1995
  3. --- pfe-0.9.13/CHANGES    Thu Jul 13 10:15:47 1995
  4. ***************
  5. *** 10,15 ****
  6. --- 10,25 ----
  7.   I was able to fix these errors and do the following improvements:
  8.   =================================================================
  9.   
  10. + 0.9.12 -- 0.9.13
  11. +     - Made it faster by reordering some if/else clauses and
  12. +         partially unrolling the inner interpreter loop.
  13. +     - Made `AHEAD' immediate as it should be.
  14. +     - Fixed yet more bugs in the configuration script.
  15. +     - Fixed an ugly bug: Instead of signal names SIGxyz the
  16. +         numbers were defined as constants. The same bug messed
  17. +         up search paths for source and block files.
  18.   0.9.11 -- 0.9.12
  19.   
  20.       - Extracted the glossary parts from dpANS6 for online help.
  21. diff -cbr pfe-0-9.12/INSTALL pfe-0.9.13/INSTALL
  22. *** pfe-0-9.12/INSTALL    Tue Apr 25 13:57:05 1995
  23. --- pfe-0.9.13/INSTALL    Sat May 20 12:39:21 1995
  24. ***************
  25. *** 33,43 ****
  26.   
  27.   Overview
  28.   
  29. ! 1) If your system is one of Linux, FreeBSD, AIX 3.2, AIX 1.2, HP-UX on
  30. !    HP 700/800, DEC Ultrix RISC or OSF/1 2.1 on a DEC Alpha:
  31.   
  32. !    Simply change to directory pfexxx/src and type `sh config.sh'.
  33. !    This makes two important files:
  34.   
  35.       Makefile    contains compiler options and dependencies
  36.   
  37. --- 33,44 ----
  38.   
  39.   Overview
  40.   
  41. ! 1) If your system is one of Linux, FreeBSD, NeXT, AIX 3.2, AIX 1.2,
  42. !    HP-UX on HP 400/700/800, DEC Ultrix RISC or OSF/1 2.1 on a DEC Alpha:
  43.   
  44. !    Simply change to directory pfexxx/src and type `sh config.sh'
  45. !    or `ksh config.sh' if a ksh is available.  This makes two
  46. !    important files:
  47.   
  48.       Makefile    contains compiler options and dependencies
  49.   
  50. ***************
  51. *** 48,56 ****
  52.      be all.
  53.   
  54.   2) If your Unix-system is not among those I tried, things are only
  55. !    a little more difficult.
  56. !    Change to directory pfexxx/src and type `sh config.sh'. Again this
  57. !    generates two files:
  58.   
  59.       makefile    dependencies and a generic version of
  60.               compiler options
  61. --- 49,56 ----
  62.      be all.
  63.   
  64.   2) If your Unix-system is not among those I tried, things are only
  65. !    a little more difficult.  Change to directory pfexxx/src and
  66. !    type `[k]sh config.sh'. Again this generates two files:
  67.   
  68.       makefile    dependencies and a generic version of
  69.               compiler options
  70. ***************
  71. *** 87,96 ****
  72.       config/`uname`/depend.mk     # the dependencies
  73.   
  74.      if one of these is missing, `config.sh' uses "config/default/*"
  75. !    instead. (Sort of object oriented concept, you see the
  76. !    "inheritance" priciple here? :-) Put the other way round: In
  77. !    "config/default/*.mk" a complete Makefile is provided. You can
  78. !    override parts of that in a system specific "config/`uname`/*.mk".
  79.   
  80.   
  81.      `config.h' may need some overworking since the header files on many
  82. --- 87,96 ----
  83.       config/`uname`/depend.mk     # the dependencies
  84.   
  85.      if one of these is missing, `config.sh' uses "config/default/*"
  86. !    instead. Sort of object oriented concept, you see the "inheritance"
  87. !    priciple here? :-) Put the other way round: In "config/default/*.mk"
  88. !    a complete Makefile is provided. You can override parts of that
  89. !    in a system specific "config/`uname`/*.mk".
  90.   
  91.   
  92.      `config.h' may need some overworking since the header files on many
  93. ***************
  94. *** 102,119 ****
  95.      emx/gcc and with Watcom C) `config.h' is ok without manual changes.
  96.   
  97.      If you don't seem to have definitions that `config.sh' finds in
  98. !    your header files or if `config.sh' doesn't find definitions that
  99. !    you know your system has, then check the header files if these
  100. !    definitions are conditional. If they are, define the neccessary
  101. !    symbols to activate them as a command line option -D.. in
  102. !    config/`uname`/options.mk'. For instance HP-UX knows very little
  103. !    about it's own library if not either
  104. !     -D_POSIX_SOURCE
  105. !      or    -D_XOPEN_SOUCE
  106. !      or    -D_HPUX_SOURCE or or or...
  107.   
  108. !    is set. Then run config.sh again.
  109.   
  110.      Check config.h for neccessary changes according to the next section
  111.      below. Most important: check if you should set the -D_BSD-switch.
  112. --- 102,122 ----
  113.      emx/gcc and with Watcom C) `config.h' is ok without manual changes.
  114.   
  115.      If you don't seem to have definitions that `config.sh' finds in
  116. !    your header files or if `config.sh' doesn't find definitions
  117. !    that you know your system has, then check the header files of
  118. !    your system (usually in /usr/include) if these definitions are
  119. !    conditional. Often important things only get declared when a certain
  120. !    preprocessor symbol is defined. Possible such symbols to look for are:
  121. !     _POSIX_SOURCE
  122. !     _XOPEN_SOURCE
  123. !     _yoursystem_SOURCE
  124. !    If you find lots of `#ifdef _yxz_SOURCE' around the important
  125. !    declarations then define that symbol in a commandline option
  126. !    like this in file src/config/`uname`/options.mk :
  127.   
  128. !     OPTIONS = -D_xyz_SOURCE ...
  129.   
  130.      Check config.h for neccessary changes according to the next section
  131.      below. Most important: check if you should set the -D_BSD-switch.
  132. ***************
  133. *** 126,133 ****
  134.   At the time of this writing, the config script checks for the
  135.   following conditions. When you read this, a few more may have been
  136.   added. So have a look at what the script `guesscfg.sh' tries to do
  137. ! (unlike the GNU autoconfigure it's quite easy to read), if you
  138. ! experience problems you can't solve with these informations:
  139.   
  140.   HAVE_AH_TRIG    define this if your system has asinh, acosh, atanh
  141.           defined in it's -lm library and math.h header.
  142. --- 129,137 ----
  143.   At the time of this writing, the config script checks for the
  144.   following conditions. When you read this, a few more may have been
  145.   added. So have a look at what the script `guesscfg.sh' tries to do
  146. ! (unlike the scripts generated by GNU autoconfigure it's quite easy
  147. ! to read), if you experience problems you can't solve with these
  148. ! informations:
  149.   
  150.   HAVE_AH_TRIG    define this if your system has asinh, acosh, atanh
  151.           defined in it's -lm library and math.h header.
  152. ***************
  153. *** 150,161 ****
  154.   HAVE_SYS_SIGLIST define this if your system has the global variable
  155.           char *sys_siglist[] containing signal names.
  156.   
  157. ! HAVE_ATEXIT    define this if your system has atexit(). Otherwise
  158.           declare like this:
  159.   
  160.           typedef void (*atexit_fp) (void);
  161. !         void atexit (atexit_fp);
  162. !         #define exit(X) trick_exit(X)
  163.   
  164.   HAVE_RAISE    define this if your system has the raise() function.
  165.           Otherwise define like this:
  166. --- 154,170 ----
  167.   HAVE_SYS_SIGLIST define this if your system has the global variable
  168.           char *sys_siglist[] containing signal names.
  169.   
  170. ! atexit() availability:
  171. !     #define eXit(X) exit(X)
  172. !         define this if your system has atexit(). Otherwise
  173.           declare like this:
  174.   
  175.       typedef void (*atexit_fp) (void);
  176. !     int atexit (atexit_fp);
  177. !     void eXit (int);
  178.   
  179.   HAVE_RAISE    define this if your system has the raise() function.
  180.           Otherwise define like this:
  181. ***************
  182. *** 211,220 ****
  183.           SunOS).  If your system has this feature, define the
  184.           symbol.
  185.   
  186. - If your system doesn't define fpos_t, then define like this:
  187. -     #define fpos_t long
  188.   If your compiler can't handle the const-keyword, define like this:
  189.   
  190.       #define const
  191. --- 220,225 ----
  192. ***************
  193. *** 296,333 ****
  194.   How to port to a non-Unix system:
  195.   =================================
  196.   
  197. ! The script `config.sh' can be run on some non-unix systems too if you
  198. ! install a Bourne or Korn shell. I ran it with every shell I could get
  199. ! my hands on and I think it's portable to every Bourne shell that knows
  200. ! shell functions. I used it on Unix with ash, bash, zsh, AIX' and
  201. ! OSF/1's sh and ksh.
  202. ! On OS/2 I successfully used bash 1.12 but ran into trouble when saving
  203. ! the scripts with CR/LF line ends. Use recode ibmpc:latin1 after
  204. ! editing the scripts when your editor saved with DOS-style line ends.
  205. ! With PD korn shell 4.9 first start the shell and use the `.' operator
  206. ! to run the script. The ms_shell dies from some internal bug.
  207. ! If you can, get a shell and those few unix utilities (a good make in
  208. ! the first place) and try to get config.sh to run. Make a subdirectory
  209. ! `config/yoursystem' and copy the makefile-parts from `config/default'
  210. ! to that place. Change what is neccessary. See config/WATCOM for an
  211. ! example of more extensive changes. This compiler isn't unix-like at
  212. ! all.
  213.   
  214.   If you can't run `config.sh' then compile `src/check_c.c' with the
  215.   C-compiler you want to use, run it and place it's output in a file
  216.   `config.h'.  Read the above section and the more up to date scriptfile
  217.   `guesscfg.sh' about options in config.h and edit config.h to describe
  218. ! your system. Refer to your C-compiler's documentation and header files.
  219.   
  220.   Write at least one new source file for the terminal stuff. Check
  221. ! `src/term.h' for which definitions are exported by the terminal driver
  222. ! and rewrite them from scratch e.g. in a file called `src/term-st.c'
  223. ! for an Atari. Then set the variable TERM_O in Makefile to your file's
  224. ! name, e.g. `term-st.o'.
  225. ! For an example you can refer to `src/termunix.c' (complex),
  226. ! `src/term-emx.c' (recommended) or `src/curses.c'.
  227.   
  228.   
  229.   Configuring the Forth system
  230. --- 301,341 ----
  231.   How to port to a non-Unix system:
  232.   =================================
  233.   
  234. ! The script `config.sh' can be run on some non-unix systems too if
  235. ! you install a Bourne or Korn shell. I ran it with every shell I
  236. ! could get my hands on and I think it's portable to every Bourne
  237. ! shell that knows shell functions. I used it on FreeBSD and Linux
  238. ! with ash, bash, pdksh, zsh, on AIX and OSF/1 with sh and ksh, on
  239. ! Ultrix and HP-UX with ksh (their sh's don't know shell functions).
  240. ! On OS/2 I successfully used bash 1.12 but ran into trouble when
  241. ! saving the scripts with CR/LF line ends. Use recode ibmpc:latin1
  242. ! after editing the scripts when your editor saved with DOS-style
  243. ! line ends.  With PD korn shell 4.9 first start the shell and use
  244. ! the `.' operator to run the script. The ms_shell dies from some
  245. ! internal bug.
  246. ! If you can, get a shell and those few unix utilities (a good make
  247. ! in the first place) and try to get config.sh to run. Make a
  248. ! subdirectory `config/yoursystem' and copy the makefile-parts from
  249. ! `config/default' to that place. Change what is neccessary. See
  250. ! config/WATCOM for an example of more extensive changes. This compiler
  251. ! isn't unix-like at all.
  252.   
  253.   If you can't run `config.sh' then compile `src/check_c.c' with the
  254.   C-compiler you want to use, run it and place it's output in a file
  255.   `config.h'.  Read the above section and the more up to date scriptfile
  256.   `guesscfg.sh' about options in config.h and edit config.h to describe
  257. ! your system. Refer to your C-compiler's documentation and header
  258. ! files.
  259.   
  260.   Write at least one new source file for the terminal stuff. Check
  261. ! `src/term.h' for which definitions are exported by the terminal
  262. ! driver and rewrite them from scratch e.g. in a file called
  263. ! `src/term-st.c' for an Atari. Then set the variable TERM_O in
  264. ! Makefile to your file's name, e.g. `term-st.o'.  For an example
  265. ! you can refer to `src/termunix.c' (complex), `src/term-emx.c'
  266. ! (recommended) or `src/curses.c'.
  267.   
  268.   
  269.   Configuring the Forth system
  270. ***************
  271. *** 397,443 ****
  272.   X-Window's xterm vt100 emulator
  273.   ===============================
  274.   
  275. ! I thought I finally learned how to handle cursor keys.
  276. ! However function keys are often not registered correctly in the
  277. ! /etc/termcap file which is needed by pfe to retrieve information on
  278. ! what function keys send.
  279. ! To fix this check your /etc/termcap for the xterm entry and ensure all
  280. ! function keys are described correctly. On Linux this requires to add
  281. ! three lines to /etc/termcap like this:
  282. ! xterm|vs100|xterm terminal emulator (X window system):\
  283. !     ...
  284. !     :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\
  285. ! +    :kN=\E[6~:kP=\E[5~:kh=\E[7~:kH=\E[8~:\
  286. ! +    :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
  287. ! +    :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k0=\E[21~:\
  288. !     :pt:sf=\n:sr=\EM:\
  289. !     ...
  290. ! You can verify this on your own system by opening an xterm, then
  291. !     vi /etc/termcap
  292. ! insert the above lines in the proper place and change like this:
  293.   
  294. !     :k1=:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
  295. ! cursor here ^
  296. ! Then type i-^v-F1
  297. ! If you get something else than
  298. !     :k1=~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
  299. ! then repeat the step for all function keys added in the above
  300. ! mentioned three lines. Replace the ^[ by \E, then save it.
  301. ! Otherwise just type U to undo the change to this line and save the
  302. ! file.
  303. ! Vi-clone elvis (on Linux) feels better with this fix too. Without that
  304. ! change it complains about missing function keys if you map them in
  305. ! your ~/.exrc.
  306.   
  307.   
  308.   Linux
  309. --- 405,461 ----
  310.   X-Window's xterm vt100 emulator
  311.   ===============================
  312.   
  313. ! Most /etc/termcap files out there are out of date. I really don't
  314. ! understand how system vendors and distributors can be so ignorant.
  315.   
  316. ! Below you find the "official" termcap entry for the xterm terminal
  317. ! emulator as distributed by the X-Consortium. Please replace the
  318. ! rubbish you find in your /etc/termcap with this one. Then all keys
  319. ! work as expected. Some other programs will benefit too from the
  320. ! change.
  321. ! -----cut here-----
  322. ! # $XConsortium: termcap,v 1.12 94/04/12 15:01:29 gildea Exp $
  323. ! #
  324. ! vs|xterm|xterm-24|xterms|vs100|xterm terminal emulator (X Window System):\
  325. !     :is=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\
  326. !     :rs=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>:\
  327. !     :AL=\E[%dL:DL=\E[%dM:DC=\E[%dP:DO=\E[%dB:UP=\E[%dA:\
  328. !     :LE=\E[%dD:RI=\E[%dC:\
  329. !     :al=\E[L:am:\
  330. !     :bl=^G:\
  331. !     :bs:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:co#80:\
  332. !     :cs=\E[%i%d;%dr:ct=\E[3g:\
  333. !     :dc=\E[P:dl=\E[M:\
  334. !     :ho=\E[H:\
  335. !     :im=\E[4h:ei=\E[4l:mi:\
  336. !     :ks=\E[?1h\E=:ke=\E[?1l\E>:\
  337. !     :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
  338. !     :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
  339. !     :k;=\E[21~:\
  340. !     :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
  341. !     :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
  342. !     :kn#20:\
  343. !     :@0=\E[1~:kI=\E[2~:kD=\E[3~:\
  344. !     :*6=\E[4~:kP=\E[5~:kN=\E[6~:\
  345. !     :km:\
  346. !     :kb=^H:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:\
  347. !     :li#24:md=\E[1m:me=\E[m:mr=\E[7m:ms:nd=\E[C:pt:\
  348. !     :eA=\E)0:as=^N:ae=^O:\
  349. !     :ml=\El:mu=\Em:\
  350. !     :sc=\E7:rc=\E8:sf=\n:so=\E[7m:se=\E[m:sr=\EM:\
  351. !     :ti=\E7\E[?47h:te=\E[2J\E[?47l\E8:\
  352. !     :up=\E[A:us=\E[4m:ue=\E[m:xn:
  353. ! v2|xterm-65|xterm with tall window 65x80 (X Window System):\
  354. !     :li#65:tc=xterm:
  355. ! vb|xterm-bold|xterm with bold instead of underline (X Window System):\
  356. !     :us=\E[1m:tc=xterm:
  357. ! #
  358. ! # vi may work better with this entry, because vi
  359. ! # doesn't use insert mode much
  360. ! vi|xterm-ic|xterm-vi|xterm with insert character instead of insert mode:\
  361. !     :im=:ei=:mi@:ic=\E[@:IC=\E[%d@:tc=xterm:
  362. ! -----cut here-----
  363.   
  364.   
  365.   Linux
  366. ***************
  367. *** 466,471 ****
  368. --- 484,501 ----
  369.      codes. If more programs relied on it then probably /etc/termcap
  370.      would be in better shape too.
  371.   
  372. + =======================================================================
  373. + FreeBSD
  374. + =======
  375. + - FreeBSD 1.1 comes with gcc 2.4.5. The i386 version of that compiler
  376. +   dies when global register variables are used.
  377. + - FreeBSD 2.0: make has problems with a default rule `.c:'.
  378. +   One step -- compiling a C test program -- in the autoconfiguration
  379. +   depends on such a default rule. Before running `sh config.sh' make
  380. +   sure gnu-make preceedes the BSD make in the search path.
  381.   
  382.   =======================================================================
  383.   
  384. ***************
  385. *** 479,486 ****
  386.   ancient system calls supported by NeXTstep without -posix.
  387.   
  388.   Forget about running the config script with Next's sh. You can use
  389. ! bash. You can't run the config script with Next's cc either since -- I
  390. ! guess, the man page says nothing -- the precompiled headers feature
  391.   fools it.
  392.   
  393.   You can compile with Next's cc after copying the configuration I built
  394. --- 509,516 ----
  395.   ancient system calls supported by NeXTstep without -posix.
  396.   
  397.   Forget about running the config script with Next's sh. You can use
  398. ! bash. You can't run the config script with Next's cc either since --
  399. ! I guess, the man page says nothing -- the precompiled headers feature
  400.   fools it.
  401.   
  402.   You can compile with Next's cc after copying the configuration I built
  403. diff -cbr pfe-0-9.12/TUNING pfe-0.9.13/TUNING
  404. *** pfe-0-9.12/TUNING    Fri Apr 14 15:21:17 1995
  405. --- pfe-0.9.13/TUNING    Fri May 19 12:07:14 1995
  406. ***************
  407. *** 1,6 ****
  408. --- 1,31 ----
  409.   TUNING THE PORTABLE FORTH ENVIRONMENT            -*- indented-text -*-
  410.   #####################################
  411.   
  412. + 1) Loop unrolling in the inner interpreter
  413. + ==========================================
  414. + The most time critical piece of code in pfe is the inner interpreter,
  415. + a tight loop calling all primitives compiled into a high-level
  416. + definition. You find it in file support.c, function run_forth().
  417. + On some CPU's it significantly saves time when the code of the inner
  418. + interpreter is unrolled several times without the need to jump back to
  419. + the start of the loop after every primitive is executed. On other
  420. + CPU's it doesn't help or even makes it slightly slower.
  421. + For example the benchmark-performance of pfe on a 486 is about 15%
  422. + better with unrolled NEXT, while the performance on a Pentium becomes
  423. + worse.
  424. + You'll have to try it, what is better on your machine. To enable the
  425. + feature, add the following compiler option in Makefile:
  426. +      -DUNROLL_NEXT
  427. + 2) Using global register variables
  428. + ==================================
  429.   pfe is designed for best portability. This means it can be compiled
  430.   with a variety of compilers on many systems. Obviously this prevented
  431.   me from squeezing the last bit of performance out of any special
  432. ***************
  433. *** 116,123 ****
  434.           br
  435.   
  436.   Reading more of the generated assembler source allowed a guess that
  437. ! gcc never uses registers with numbers around 16 while the cpu seems to
  438. ! have 32 such registers.
  439.   
  440.   Next edit the file `src/virtual.h'. Add a system specific section of
  441.   preprocessor definitions naming CPU registers to use for virtual
  442. --- 141,149 ----
  443.           br
  444.   
  445.   Reading more of the generated assembler source allowed a guess that
  446. !  - Gcc talks to the assembler about registers by their numbers only.
  447. !  - Gcc never uses registers with numbers around 16 while the cpu seems
  448. !    to have 32 such registers.
  449.   
  450.   Next edit the file `src/virtual.h'. Add a system specific section of
  451.   preprocessor definitions naming CPU registers to use for virtual
  452. diff -cbr pfe-0-9.12/benchm.res pfe-0.9.13/benchm.res
  453. *** pfe-0-9.12/benchm.res    Thu Apr 27 23:39:24 1995
  454. --- pfe-0.9.13/benchm.res    Sun Jul 16 19:56:54 1995
  455. ***************
  456. *** 1,10 ****
  457. ! IBM PS/2 (16 MHz 386 DX) AIX 1.2, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  458. ! -------------------------------------------------------------------------
  459. ! RUNNING `BENCHMARK': 1899 Primes   TOOK 15982 ms
  460. ! RUNNING `SIMPLE':                  TOOK  6683 ms
  461. ! RUNNING `OUTER':                   TOOK 17199 ms
  462. ! RUNNING `25 FIB':    75025         TOOK 12832 ms
  463. ! RUNNING `SEARCHSP':                TOOK 17515 ms
  464.   
  465.   
  466.   IBM RS/6000, AIX 3.2, cc -O3
  467. --- 1,25 ----
  468. ! All results with pfe compiled by the C-compiler as noted with the
  469. ! best applicable optimization.
  470. ! With gcc this usually means:    -DUSE_REGS -O2 -fomit-frame-pointer
  471. ! And on some machines:        -DUNROLL_NEXT
  472. ! IBM PS/2 (16 MHz 386 DX) AIX 1.2, gcc 2.3.3
  473. ! -------------------------------------------
  474. ! RUNNING `BENCHMARK': 1899 Primes   TOOK 14399 ms
  475. ! RUNNING `SIMPLE':                  TOOK  5449 ms
  476. ! RUNNING `OUTER':                   TOOK 14749 ms
  477. ! RUNNING `25 FIB':    75025         TOOK 11516 ms
  478. ! RUNNING `SEARCHSP':                TOOK 32215 ms
  479. ! Intel 486DX33, FreeBSD-2.0-RELEASE
  480. ! ----------------------------------
  481. ! RUNNING `BENCHMARK': 1899 Primes   TOOK  1500 ms 
  482. ! RUNNING `SIMPLE':                  TOOK   695 ms 
  483. ! RUNNING `OUTER':                   TOOK  1679 ms 
  484. ! RUNNING `25 FIB':    75025         TOOK  1296 ms 
  485. ! RUNNING `SEARCHSP':                TOOK  3171 ms 
  486.   
  487.   
  488.   IBM RS/6000, AIX 3.2, cc -O3
  489. ***************
  490. *** 15,27 ****
  491.   RUNNING `25 FIB':    75025         TOOK  1220 ms 
  492.   RUNNING `SEARCHSP':                TOOK  1440 ms 
  493.   
  494. ! IBM RS/6000, AIX 3.2, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  495. ! -------------------------------------------------------------
  496. ! RUNNING `BENCHMARK': 1899 Primes   TOOK  1020 ms 
  497. ! RUNNING `SIMPLE':                  TOOK   510 ms 
  498. ! RUNNING `OUTER':                   TOOK  1200 ms 
  499. ! RUNNING `25 FIB':    75025         TOOK   830 ms 
  500. ! RUNNING `SEARCHSP':                TOOK  1400 ms 
  501.   
  502.   
  503.   AMD 486DX2/80, OS/2 Warp, Watcom C 9.5, options /omaxnet /5r /zp4
  504. --- 30,42 ----
  505.   RUNNING `25 FIB':    75025         TOOK  1220 ms 
  506.   RUNNING `SEARCHSP':                TOOK  1440 ms 
  507.   
  508. ! IBM RS/6000, AIX 3.2, gcc
  509. ! -------------------------
  510. ! RUNNING `BENCHMARK': 1899 Primes   TOOK   980 ms 
  511. ! RUNNING `SIMPLE':                  TOOK   470 ms 
  512. ! RUNNING `OUTER':                   TOOK  1130 ms 
  513. ! RUNNING `25 FIB':    75025         TOOK   800 ms 
  514. ! RUNNING `SEARCHSP':                TOOK  1740 ms 
  515.   
  516.   
  517.   AMD 486DX2/80, OS/2 Warp, Watcom C 9.5, options /omaxnet /5r /zp4
  518. ***************
  519. *** 32,60 ****
  520.   RUNNING `25 FIB':    75025         TOOK  1000 ms
  521.   RUNNING `SEARCHSP':                TOOK  2560 ms
  522.   
  523. ! AMD 486DX2/80, OS/2 Warp, gcc -O2 -fomit-frame-pointer
  524. ! ------------------------------------------------------
  525. ! RUNNING `BENCHMARK': 1899 Primes   TOOK  2130 ms
  526. ! RUNNING `SIMPLE':                  TOOK   470 ms
  527. ! RUNNING `OUTER':                   TOOK  1340 ms
  528. ! RUNNING `25 FIB':    75025         TOOK   970 ms
  529. ! RUNNING `SEARCHSP':                TOOK  2970 ms
  530. ! AMD 486DX2/80, OS/2 Warp, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  531. ! -----------------------------------------------------------------
  532. ! RUNNING `BENCHMARK': 1899 Primes   TOOK   720 ms
  533. ! RUNNING `SIMPLE':                  TOOK   340 ms
  534. ! RUNNING `OUTER':                   TOOK   820 ms
  535. ! RUNNING `25 FIB':    75025         TOOK   680 ms
  536. ! RUNNING `SEARCHSP':                TOOK  2960 ms
  537. ! AMD 486DX2/80, Linux, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  538. ! -------------------------------------------------------------
  539. ! RUNNING `BENCHMARK': 1899 Primes   TOOK   710 ms 
  540. ! RUNNING `SIMPLE':                  TOOK   340 ms 
  541. ! RUNNING `OUTER':                   TOOK   800 ms 
  542. ! RUNNING `25 FIB':    75025         TOOK   620 ms 
  543. ! RUNNING `SEARCHSP':                TOOK   860 ms 
  544.   
  545.   
  546.   Pentium 66 MHz, NeXTstep, cc -O2 -fomit-frame-pointer
  547. --- 47,67 ----
  548.   RUNNING `25 FIB':    75025         TOOK  1000 ms
  549.   RUNNING `SEARCHSP':                TOOK  2560 ms
  550.   
  551. ! AMD 486DX2/80, OS/2 Warp, gcc
  552. ! -----------------------------
  553. ! RUNNING `BENCHMARK': 1899 Primes   TOOK   650 ms
  554. ! RUNNING `SIMPLE':                  TOOK   280 ms
  555. ! RUNNING `OUTER':                   TOOK   720 ms
  556. ! RUNNING `25 FIB':    75025         TOOK   630 ms
  557. ! RUNNING `SEARCHSP':                TOOK  1160 ms
  558. ! AMD 486DX2/80, Linux, gcc
  559. ! -------------------------
  560. ! RUNNING `BENCHMARK': 1899 Primes   TOOK   630 ms 
  561. ! RUNNING `SIMPLE':                  TOOK   280 ms 
  562. ! RUNNING `OUTER':                   TOOK   690 ms 
  563. ! RUNNING `25 FIB':    75025         TOOK   550 ms 
  564. ! RUNNING `SEARCHSP':                TOOK   880 ms 
  565.   
  566.   
  567.   Pentium 66 MHz, NeXTstep, cc -O2 -fomit-frame-pointer
  568. ***************
  569. *** 65,72 ****
  570.   RUNNING `25 FIB':    75025         TOOK   953 ms 
  571.   RUNNING `SEARCHSP':                TOOK  1875 ms 
  572.   
  573. ! Pentium 66 MHz, NeXTstep, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  574. ! -----------------------------------------------------------------
  575.   RUNNING `BENCHMARK': 1899 Primes   TOOK   687 ms 
  576.   RUNNING `SIMPLE':                  TOOK   265 ms 
  577.   RUNNING `OUTER':                   TOOK   765 ms 
  578. --- 72,79 ----
  579.   RUNNING `25 FIB':    75025         TOOK   953 ms 
  580.   RUNNING `SEARCHSP':                TOOK  1875 ms 
  581.   
  582. ! Pentium 66 MHz, NeXTstep, gcc
  583. ! -----------------------------
  584.   RUNNING `BENCHMARK': 1899 Primes   TOOK   687 ms 
  585.   RUNNING `SIMPLE':                  TOOK   265 ms 
  586.   RUNNING `OUTER':                   TOOK   765 ms 
  587. ***************
  588. *** 82,102 ****
  589.   RUNNING `25 FIB':    75025         TOOK  1940 ms 
  590.   RUNNING `SEARCHSP':                TOOK  3780 ms 
  591.   
  592. - HP 9000/43S, HP-UX B.08.00 A, gcc -O2 -fomit-frame-pointer
  593. - ----------------------------------------------------------
  594. - RUNNING `BENCHMARK': 1899 Primes   TOOK  2160 ms 
  595. - RUNNING `SIMPLE':                  TOOK   880 ms 
  596. - RUNNING `OUTER':                   TOOK  2380 ms 
  597. - RUNNING `25 FIB':    75025         TOOK  1760 ms 
  598. - RUNNING `SEARCHSP':                TOOK  3820 ms 
  599.   HP 9000/43S, HP-UX B.08.00 A, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  600.   ---------------------------------------------------------------------
  601. ! RUNNING `BENCHMARK': 1899 Primes   TOOK  1560 ms 
  602.   RUNNING `SIMPLE':                  TOOK   580 ms 
  603. ! RUNNING `OUTER':                   TOOK  1680 ms 
  604. ! RUNNING `25 FIB':    75025         TOOK  1300 ms 
  605. ! RUNNING `SEARCHSP':                TOOK  3740 ms 
  606.   
  607.   
  608.   HP 9000/735, HP-UX A.09.05 A, c89 -O
  609. --- 89,101 ----
  610.   RUNNING `25 FIB':    75025         TOOK  1940 ms 
  611.   RUNNING `SEARCHSP':                TOOK  3780 ms 
  612.   
  613.   HP 9000/43S, HP-UX B.08.00 A, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  614.   ---------------------------------------------------------------------
  615. ! RUNNING `BENCHMARK': 1899 Primes   TOOK  1460 ms 
  616.   RUNNING `SIMPLE':                  TOOK   580 ms 
  617. ! RUNNING `OUTER':                   TOOK  1600 ms 
  618. ! RUNNING `25 FIB':    75025         TOOK  1180 ms 
  619. ! RUNNING `SEARCHSP':                TOOK  3700 ms 
  620.   
  621.   
  622.   HP 9000/735, HP-UX A.09.05 A, c89 -O
  623. ***************
  624. *** 107,114 ****
  625.   RUNNING `25 FIB':    75025         TOOK  1190 ms 
  626.   RUNNING `SEARCHSP':                TOOK   560 ms 
  627.   
  628. ! HP 9000/735, HP-UX A.09.05 A, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  629. ! ---------------------------------------------------------------------
  630.   RUNNING `BENCHMARK': 1899 Primes   TOOK   720 ms 
  631.   RUNNING `SIMPLE':                  TOOK   320 ms 
  632.   RUNNING `OUTER':                   TOOK   810 ms 
  633. --- 106,113 ----
  634.   RUNNING `25 FIB':    75025         TOOK  1190 ms 
  635.   RUNNING `SEARCHSP':                TOOK   560 ms 
  636.   
  637. ! HP 9000/735, HP-UX A.09.05 A, gcc
  638. ! ---------------------------------
  639.   RUNNING `BENCHMARK': 1899 Primes   TOOK   720 ms 
  640.   RUNNING `SIMPLE':                  TOOK   320 ms 
  641.   RUNNING `OUTER':                   TOOK   810 ms 
  642. ***************
  643. *** 124,136 ****
  644.   RUNNING `25 FIB':    75025         TOOK   578 ms
  645.   RUNNING `SEARCHSP':                TOOK   624 ms
  646.   
  647. ! DECstation 5000/260, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  648. ! ------------------------------------------------------------
  649. ! RUNNING `BENCHMARK': 1899 Primes   TOOK   488 ms
  650. ! RUNNING `SIMPLE':                  TOOK   238 ms
  651. ! RUNNING `OUTER':                   TOOK   562 ms
  652. ! RUNNING `25 FIB':    75025         TOOK   398 ms
  653. ! RUNNING `SEARCHSP':                TOOK   632 ms
  654.   
  655.   
  656.   DEC 3000, Alpha at 175 MHz, OSF/1 V2.1, cc -O2
  657. --- 123,135 ----
  658.   RUNNING `25 FIB':    75025         TOOK   578 ms
  659.   RUNNING `SEARCHSP':                TOOK   624 ms
  660.   
  661. ! DECstation 5000/260, gcc
  662. ! ------------------------
  663. ! RUNNING `BENCHMARK': 1899 Primes   TOOK   464 ms 
  664. ! RUNNING `SIMPLE':                  TOOK   210 ms 
  665. ! RUNNING `OUTER':                   TOOK   484 ms 
  666. ! RUNNING `25 FIB':    75025         TOOK   382 ms 
  667. ! RUNNING `SEARCHSP':                TOOK  1480 ms
  668.   
  669.   
  670.   DEC 3000, Alpha at 175 MHz, OSF/1 V2.1, cc -O2
  671. ***************
  672. *** 141,148 ****
  673.   RUNNING `25 FIB':    75025         TOOK   566 ms 
  674.   RUNNING `SEARCHSP':                TOOK   616 ms
  675.   
  676. ! DEC 3000, Alpha at 175 MHz, OSF/1 V2.1, gcc -O2 -fomit-frame-pointer -DUSE_REGS
  677. ! -------------------------------------------------------------------------------
  678.   RUNNING `BENCHMARK': 1899 Primes   TOOK   349 ms 
  679.   RUNNING `SIMPLE':                  TOOK   133 ms 
  680.   RUNNING `OUTER':                   TOOK   383 ms 
  681. --- 140,147 ----
  682.   RUNNING `25 FIB':    75025         TOOK   566 ms 
  683.   RUNNING `SEARCHSP':                TOOK   616 ms
  684.   
  685. ! DEC 3000, Alpha at 175 MHz, OSF/1 V2.1, gcc
  686. ! -------------------------------------------
  687.   RUNNING `BENCHMARK': 1899 Primes   TOOK   349 ms 
  688.   RUNNING `SIMPLE':                  TOOK   133 ms 
  689.   RUNNING `OUTER':                   TOOK   383 ms 
  690. diff -cbr pfe-0-9.12/src/4ed.c pfe-0.9.13/src/4ed.c
  691. *** pfe-0-9.12/src/4ed.c    Fri Apr 28 18:59:08 1995
  692. --- pfe-0.9.13/src/4ed.c    Mon Jul 17 20:23:53 1995
  693. ***************
  694. *** 16,22 ****
  695.    * License along with this library; if not, write to the Free
  696.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  697.    *
  698. !  * This file is version 0.9.12 of 28-Apr-95
  699.    * Check for the latest version of this package via anonymous ftp at
  700.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  701.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  702. --- 16,22 ----
  703.    * License along with this library; if not, write to the Free
  704.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  705.    *
  706. !  * This file is version 0.9.13 of 17-July-95
  707.    * Check for the latest version of this package via anonymous ftp at
  708.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  709.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  710. Only in pfe-0.9.13/src: 4ed.o
  711. Only in pfe-0.9.13/src: Makefile
  712. diff -cbr pfe-0-9.12/src/block.c pfe-0.9.13/src/block.c
  713. *** pfe-0-9.12/src/block.c    Fri Apr 28 18:59:08 1995
  714. --- pfe-0.9.13/src/block.c    Mon Jul 17 20:23:54 1995
  715. ***************
  716. *** 16,22 ****
  717.    * License along with this library; if not, write to the Free
  718.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  719.    *
  720. !  * This file is version 0.9.12 of 28-Apr-95
  721.    * Check for the latest version of this package via anonymous ftp at
  722.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  723.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  724. --- 16,22 ----
  725.    * License along with this library; if not, write to the Free
  726.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  727.    *
  728. !  * This file is version 0.9.13 of 17-July-95
  729.    * Check for the latest version of this package via anonymous ftp at
  730.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  731.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  732. Only in pfe-0.9.13/src: block.o
  733. diff -cbr pfe-0-9.12/src/check_c.c pfe-0.9.13/src/check_c.c
  734. *** pfe-0-9.12/src/check_c.c    Fri Apr 28 18:59:09 1995
  735. --- pfe-0.9.13/src/check_c.c    Mon Jul 17 20:23:54 1995
  736. ***************
  737. *** 16,22 ****
  738.    * License along with this library; if not, write to the Free
  739.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  740.    *
  741. !  * This file is version 0.9.12 of 28-Apr-95
  742.    * Check for the latest version of this package via anonymous ftp at
  743.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  744.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  745. --- 16,22 ----
  746.    * License along with this library; if not, write to the Free
  747.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  748.    *
  749. !  * This file is version 0.9.13 of 17-July-95
  750.    * Check for the latest version of this package via anonymous ftp at
  751.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  752.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  753. diff -cbr pfe-0-9.12/src/compiler.h pfe-0.9.13/src/compiler.h
  754. *** pfe-0-9.12/src/compiler.h    Fri Apr 28 18:59:03 1995
  755. --- pfe-0.9.13/src/compiler.h    Mon Jul 17 20:23:48 1995
  756. ***************
  757. *** 16,22 ****
  758.    * License along with this library; if not, write to the Free
  759.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  760.    *
  761. !  * This file is version 0.9.12 of 28-Apr-95
  762.    * Check for the latest version of this package via anonymous ftp at
  763.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  764.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  765. --- 16,22 ----
  766.    * License along with this library; if not, write to the Free
  767.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  768.    *
  769. !  * This file is version 0.9.13 of 17-July-95
  770.    * Check for the latest version of this package via anonymous ftp at
  771.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  772.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  773. diff -cbr pfe-0-9.12/src/config/AIX1/options.mk pfe-0.9.13/src/config/AIX1/options.mk
  774. *** pfe-0-9.12/src/config/AIX1/options.mk    Fri Apr 28 15:50:18 1995
  775. --- pfe-0.9.13/src/config/AIX1/options.mk    Fri May 19 14:17:58 1995
  776. ***************
  777. *** 14,25 ****
  778.   SYSTEM    = AIX1
  779.   
  780.   CC    = gcc -pipe
  781. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS
  782.   DEBUG    = -g -O
  783.   
  784.   CL    = $(CC)
  785.   CPP    = $(CC) -E
  786. ! OPTIONS    = -DHAVE_SELECT -DUSE_TERMCAP
  787.   STRIP    = -s
  788.   TERM_O    = termunix$o
  789.   SYS_O    = unix$o
  790. --- 14,25 ----
  791.   SYSTEM    = AIX1
  792.   
  793.   CC    = gcc -pipe
  794. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS -DUNROLL_NEXT
  795.   DEBUG    = -g -O
  796.   
  797.   CL    = $(CC)
  798.   CPP    = $(CC) -E
  799. ! OPTIONS    = -DHAVE_SELECT
  800.   STRIP    = -s
  801.   TERM_O    = termunix$o
  802.   SYS_O    = unix$o
  803. diff -cbr pfe-0-9.12/src/config/AIX3/options.mk pfe-0.9.13/src/config/AIX3/options.mk
  804. *** pfe-0-9.12/src/config/AIX3/options.mk    Fri Apr 28 14:02:53 1995
  805. --- pfe-0.9.13/src/config/AIX3/options.mk    Mon May  8 09:58:31 1995
  806. ***************
  807. *** 26,32 ****
  808.   CL    = $(CC)
  809.   CPP    = $(CC) -E
  810.   
  811. ! OPTIONS    = -DUSE_TERMCAP
  812.   STRIP    = -s
  813.   TERM_O    = termunix$o
  814.   SYS_O    = unix$o
  815. --- 26,32 ----
  816.   CL    = $(CC)
  817.   CPP    = $(CC) -E
  818.   
  819. ! OPTIONS    =
  820.   STRIP    = -s
  821.   TERM_O    = termunix$o
  822.   SYS_O    = unix$o
  823. diff -cbr pfe-0-9.12/src/config/EMX/options.mk pfe-0.9.13/src/config/EMX/options.mk
  824. *** pfe-0-9.12/src/config/EMX/options.mk    Wed Apr 26 19:48:59 1995
  825. --- pfe-0.9.13/src/config/EMX/options.mk    Fri May 19 14:17:35 1995
  826. ***************
  827. *** 21,27 ****
  828.   SYSTEM    = EMX
  829.   
  830.   CC    = gcc -Wall
  831. ! OPTIM    = -m486 -O2 -fomit-frame-pointer -DUSE_REGS
  832.   DEBUG    = -g
  833.   
  834.   CL    = $(CC)
  835. --- 21,27 ----
  836.   SYSTEM    = EMX
  837.   
  838.   CC    = gcc -Wall
  839. ! OPTIM    = -m486 -O2 -fomit-frame-pointer -DUSE_REGS -DUNROLL_NEXT
  840.   DEBUG    = -g
  841.   
  842.   CL    = $(CC)
  843. diff -cbr pfe-0-9.12/src/config/FreeBSD/options.mk pfe-0.9.13/src/config/FreeBSD/options.mk
  844. *** pfe-0-9.12/src/config/FreeBSD/options.mk    Thu Apr 27 10:23:50 1995
  845. --- pfe-0.9.13/src/config/FreeBSD/options.mk    Fri May 19 12:07:07 1995
  846. ***************
  847. *** 12,18 ****
  848.   SYSTEM    = FreeBSD
  849.   
  850.   CC    = gcc -pipe -Wall
  851. ! OPTIM    = -m486 -O2 -fomit-frame-pointer -DUSE_REGS
  852.   DEBUG    = -g
  853.   
  854.   CL    = $(CC)
  855. --- 12,24 ----
  856.   SYSTEM    = FreeBSD
  857.   
  858.   CC    = gcc -pipe -Wall
  859. ! # for Pentium:
  860. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS
  861. ! # for 486:
  862. ! OPTIM    = -m486 -O2 -fomit-frame-pointer -DUSE_REGS -DUNROLL_NEXT
  863.   DEBUG    = -g
  864.   
  865.   CL    = $(CC)
  866. ***************
  867. *** 22,28 ****
  868.   STRIP    = -s
  869.   TERM_O    = termunix$o
  870.   SYS_O    = unix$o
  871. ! LFLAGS    = -static
  872.   LIBS    = -ltermcap -lm
  873.   
  874.   
  875. --- 28,34 ----
  876.   STRIP    = -s
  877.   TERM_O    = termunix$o
  878.   SYS_O    = unix$o
  879. ! LFLAGS    = 
  880.   LIBS    = -ltermcap -lm
  881.   
  882.   
  883. diff -cbr pfe-0-9.12/src/config/HPUX68K/options.mk pfe-0.9.13/src/config/HPUX68K/options.mk
  884. *** pfe-0-9.12/src/config/HPUX68K/options.mk    Thu Apr 27 20:55:31 1995
  885. --- pfe-0.9.13/src/config/HPUX68K/options.mk    Fri May 19 14:14:34 1995
  886. ***************
  887. *** 20,26 ****
  888.   SYSTEM    = HPUX
  889.   
  890.   CC    = gcc -pipe -Wall
  891. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS
  892.   DEBUG    = -g -O
  893.   OPTIONS    = -D_HPUX_SOURCE -DUSE_TERMCAP
  894.   
  895. --- 20,26 ----
  896.   SYSTEM    = HPUX
  897.   
  898.   CC    = gcc -pipe -Wall
  899. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS -DUNROLL_NEXT
  900.   DEBUG    = -g -O
  901.   OPTIONS    = -D_HPUX_SOURCE -DUSE_TERMCAP
  902.   
  903. diff -cbr pfe-0-9.12/src/config/HPUXRISC/options.mk pfe-0.9.13/src/config/HPUXRISC/options.mk
  904. *** pfe-0-9.12/src/config/HPUXRISC/options.mk    Thu Apr 27 20:55:31 1995
  905. --- pfe-0.9.13/src/config/HPUXRISC/options.mk    Fri May 12 12:02:26 1995
  906. ***************
  907. *** 22,33 ****
  908.   CC    = gcc -pipe -Wall
  909.   OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS
  910.   DEBUG    = -g -O
  911. ! OPTIONS    = -D_HPUX_SOURCE
  912.   
  913.   #CC    = c89 -Aa
  914.   #OPTIM    = +O1
  915.   #DEBUG    = -g
  916. ! #OPTIONS = -D_HPUX_SOURCE -Dconst=""
  917.   
  918.   CL    = $(CC)
  919.   CPP    = $(CC) -E
  920. --- 22,33 ----
  921.   CC    = gcc -pipe -Wall
  922.   OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS
  923.   DEBUG    = -g -O
  924. ! OPTIONS    = -D_HPUX_SOURCE -DUSE_TERMCAP
  925.   
  926.   #CC    = c89 -Aa
  927.   #OPTIM    = +O1
  928.   #DEBUG    = -g
  929. ! #OPTIONS = -D_HPUX_SOURCE -DUSE_TERMCAP -Dconst=""
  930.   
  931.   CL    = $(CC)
  932.   CPP    = $(CC) -E
  933. diff -cbr pfe-0-9.12/src/config/Linux/options.mk pfe-0.9.13/src/config/Linux/options.mk
  934. *** pfe-0-9.12/src/config/Linux/options.mk    Mon Apr 24 19:21:52 1995
  935. --- pfe-0.9.13/src/config/Linux/options.mk    Fri May 19 12:04:37 1995
  936. ***************
  937. *** 8,14 ****
  938.   
  939.   # specifying -ansi -pedantic disables global register variables
  940.   CC    = gcc -m486 -pipe -Wall #-ansi -pedantic
  941. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS
  942.   DEBUG    = -g -O
  943.   
  944.   CL    = $(CC)
  945. --- 8,17 ----
  946.   
  947.   # specifying -ansi -pedantic disables global register variables
  948.   CC    = gcc -m486 -pipe -Wall #-ansi -pedantic
  949. ! # comment out -DUNROLL_NEXT when you run it on a Pentium
  950. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS -DUNROLL_NEXT
  951.   DEBUG    = -g -O
  952.   
  953.   CL    = $(CC)
  954. diff -cbr pfe-0-9.12/src/config/NeXTstep/options.mk pfe-0.9.13/src/config/NeXTstep/options.mk
  955. *** pfe-0-9.12/src/config/NeXTstep/options.mk    Tue Apr 25 13:27:45 1995
  956. --- pfe-0.9.13/src/config/NeXTstep/options.mk    Fri May 19 12:05:41 1995
  957. ***************
  958. *** 15,21 ****
  959.   #DEBUG    = -g -O
  960.   
  961.   CC    = gcc -Wall
  962. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS
  963.   DEBUG    = -g -O
  964.   
  965.   CL    = $(CC)
  966. --- 15,22 ----
  967.   #DEBUG    = -g -O
  968.   
  969.   CC    = gcc -Wall
  970. ! # comment out -DUNROLL_NEXT when you run it on a Pentium
  971. ! OPTIM    = -O2 -fomit-frame-pointer -DUSE_REGS -DUNROLL_NEXT
  972.   DEBUG    = -g -O
  973.   
  974.   CL    = $(CC)
  975. Only in pfe-0.9.13/src/config: OS2-ICC
  976. diff -cbr pfe-0-9.12/src/config/SunOS/options.mk pfe-0.9.13/src/config/SunOS/options.mk
  977. *** pfe-0-9.12/src/config/SunOS/options.mk    Fri Apr 28 15:51:56 1995
  978. --- pfe-0.9.13/src/config/SunOS/options.mk    Mon May  8 10:00:37 1995
  979. ***************
  980. *** 24,30 ****
  981.   CPP    = $(CC) -E
  982.   
  983.   STRIP    = -s
  984. ! OPTIONS    = -D_BSD -DUSE_TERMCAP
  985.   TERM_O    = termunix$o
  986.   SYS_O    = unix$o
  987.   LFLAGS    = 
  988. --- 24,30 ----
  989.   CPP    = $(CC) -E
  990.   
  991.   STRIP    = -s
  992. ! OPTIONS    = -D_BSD
  993.   TERM_O    = termunix$o
  994.   SYS_O    = unix$o
  995.   LFLAGS    = 
  996. diff -cbr pfe-0-9.12/src/config/default/options.mk pfe-0.9.13/src/config/default/options.mk
  997. *** pfe-0-9.12/src/config/default/options.mk    Mon Apr 24 19:21:52 1995
  998. --- pfe-0.9.13/src/config/default/options.mk    Fri May 19 14:18:22 1995
  999. ***************
  1000. *** 13,19 ****
  1001.   SYSTEM    = UNIX
  1002.   
  1003.   CC    = cc
  1004. ! OPTIM    = -O# -DUSE_REGS
  1005.   DEBUG    = -g
  1006.   
  1007.   CL    = $(CC)
  1008. --- 13,19 ----
  1009.   SYSTEM    = UNIX
  1010.   
  1011.   CC    = cc
  1012. ! OPTIM    = -O# -DUSE_REGS -DUNROLL_NEXT
  1013.   DEBUG    = -g
  1014.   
  1015.   CL    = $(CC)
  1016. Only in pfe-0.9.13/src: config.h
  1017. diff -cbr pfe-0-9.12/src/config.sh pfe-0.9.13/src/config.sh
  1018. *** pfe-0-9.12/src/config.sh    Wed Apr 26 20:39:51 1995
  1019. --- pfe-0.9.13/src/config.sh    Sat May 20 11:30:26 1995
  1020. ***************
  1021. *** 24,37 ****
  1022.   #   Available system names are: (* detected automatically)
  1023.   #
  1024.   #    * Linux
  1025. ! #    * FreeBSD    FreeBSD or BSD386
  1026.   #    * EMX        DOS or OS/2 with gcc and EMX DOS extender
  1027.   #      WATCOM    Watcom C, set TARGET in the Makefile!
  1028.   #    * AIX1        AIX version 1.2 on PS/2
  1029.   #    * AIX3        AIX version 3.x on RS/6000
  1030. ! #    * HPUX        HP-UX 8.x or later on HP900/4x or HP9000/[78]x
  1031.   #    * NeXTstep    for Intel
  1032. ! #    * SunOS        SunOS 4.3, maybe also Solaris 2.3
  1033.   #    * ULTRIX    DEC ULTRIX RISC 4.3 on DecStation
  1034.   #    * OSF1        DEC OSF1 2.x on DEC Alpha workstation
  1035.   #
  1036. --- 24,37 ----
  1037.   #   Available system names are: (* detected automatically)
  1038.   #
  1039.   #    * Linux
  1040. ! #      FreeBSD    FreeBSD(*) or BSD386 or NetBSD
  1041.   #    * EMX        DOS or OS/2 with gcc and EMX DOS extender
  1042.   #      WATCOM    Watcom C, set TARGET in the Makefile!
  1043.   #    * AIX1        AIX version 1.2 on PS/2
  1044.   #    * AIX3        AIX version 3.x on RS/6000
  1045. ! #    * HPUX        HP-UX 8.x or later on HP9000/4x or HP9000/[78]x
  1046.   #    * NeXTstep    for Intel
  1047. ! #    * SunOS        SunOS 4.3, maybe also Solaris 2.4 but not 2.3
  1048.   #    * ULTRIX    DEC ULTRIX RISC 4.3 on DecStation
  1049.   #    * OSF1        DEC OSF1 2.x on DEC Alpha workstation
  1050.   #
  1051. ***************
  1052. *** 122,128 ****
  1053.   then
  1054.     cp -p config/$system/config.h .
  1055.   else
  1056. !   . ./guesscfg.sh $system > config.h
  1057.   fi
  1058.   
  1059.   echo "Configuration created." >&2
  1060. --- 122,128 ----
  1061.   then
  1062.     cp -p config/$system/config.h .
  1063.   else
  1064. !   . ./guesscfg.sh $system
  1065.   fi
  1066.   
  1067.   echo "Configuration created." >&2
  1068. diff -cbr pfe-0-9.12/src/const.h pfe-0.9.13/src/const.h
  1069. *** pfe-0-9.12/src/const.h    Fri Apr 28 18:59:03 1995
  1070. --- pfe-0.9.13/src/const.h    Mon Jul 17 20:23:48 1995
  1071. ***************
  1072. *** 16,22 ****
  1073.    * License along with this library; if not, write to the Free
  1074.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1075.    *
  1076. !  * This file is version 0.9.12 of 28-Apr-95
  1077.    * Check for the latest version of this package via anonymous ftp at
  1078.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1079.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1080. --- 16,22 ----
  1081.    * License along with this library; if not, write to the Free
  1082.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1083.    *
  1084. !  * This file is version 0.9.13 of 17-July-95
  1085.    * Check for the latest version of this package via anonymous ftp at
  1086.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1087.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1088. ***************
  1089. *** 69,76 ****
  1090.   
  1091.   /* other constants, do not change! */
  1092.   
  1093. ! #define    VERSION        "0.9.12"
  1094. ! #define    DATE        "28-Apr-95"
  1095.   
  1096.   #undef FALSE
  1097.   #undef TRUE
  1098. --- 69,76 ----
  1099.   
  1100.   /* other constants, do not change! */
  1101.   
  1102. ! #define    VERSION        "0.9.13"
  1103. ! #define    DATE        "17-July-95"
  1104.   
  1105.   #undef FALSE
  1106.   #undef TRUE
  1107. diff -cbr pfe-0-9.12/src/core.c pfe-0.9.13/src/core.c
  1108. *** pfe-0-9.12/src/core.c    Fri Apr 28 18:59:09 1995
  1109. --- pfe-0.9.13/src/core.c    Mon Jul 17 20:23:54 1995
  1110. ***************
  1111. *** 16,22 ****
  1112.    * License along with this library; if not, write to the Free
  1113.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1114.    *
  1115. !  * This file is version 0.9.12 of 28-Apr-95
  1116.    * Check for the latest version of this package via anonymous ftp at
  1117.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1118.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1119. --- 16,22 ----
  1120.    * License along with this library; if not, write to the Free
  1121.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1122.    *
  1123. !  * This file is version 0.9.13 of 17-July-95
  1124.    * Check for the latest version of this package via anonymous ftp at
  1125.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1126.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1127. ***************
  1128. *** 130,140 ****
  1129.     Cell i = *sp++;
  1130.   
  1131.     if (i < 0
  1132. !       ? (*RP += i) < 0
  1133. !       : (*RP += i) >= 0)
  1134. !     rp += 3;
  1135. !   else
  1136.       ip = rp[2];
  1137.   }
  1138.   
  1139.   Code (plus_loop)
  1140. --- 130,140 ----
  1141.     Cell i = *sp++;
  1142.   
  1143.     if (i < 0
  1144. !       ? (*RP += i) >= 0
  1145. !       : (*RP += i) < 0)
  1146.       ip = rp[2];
  1147. +   else
  1148. +     rp += 3;
  1149.   }
  1150.   
  1151.   Code (plus_loop)
  1152. ***************
  1153. *** 559,568 ****
  1154.     *p = does_defined_runtime;
  1155.     --p;
  1156.     *(Xt **) p = ip;
  1157. !   if (lp == RP)
  1158. !     locals_exit_execution_ ();
  1159. !   else
  1160.       ip = *rp++;
  1161.   }
  1162.   
  1163.   Code (does)
  1164. --- 559,568 ----
  1165.     *p = does_defined_runtime;
  1166.     --p;
  1167.     *(Xt **) p = ip;
  1168. !   if (lp != RP)
  1169.       ip = *rp++;
  1170. +   else
  1171. +     locals_exit_execution_ ();
  1172.   }
  1173.   
  1174.   Code (does)
  1175. ***************
  1176. *** 779,788 ****
  1177.   
  1178.   code (if_execution)
  1179.   {
  1180. !   if (*sp++)
  1181. !     ip++;
  1182. !   else
  1183.       BRANCH;
  1184.   }
  1185.   /* *INDENT-OFF* */
  1186.   Code (if)
  1187. --- 779,788 ----
  1188.   
  1189.   code (if_execution)
  1190.   {
  1191. !   if (!*sp++)
  1192.       BRANCH;
  1193. +   else
  1194. +     ip++;
  1195.   }
  1196.   /* *INDENT-OFF* */
  1197.   Code (if)
  1198. ***************
  1199. *** 796,802 ****
  1200. --- 796,805 ----
  1201.   
  1202.   Code (immediate)
  1203.   {
  1204. +   if (LAST)
  1205.       *LAST |= IMMEDIATE;
  1206. +   else
  1207. +     tHrow (THROW_ARG_TYPE);
  1208.   }
  1209.   
  1210.   code (invert)
  1211. ***************
  1212. *** 840,849 ****
  1213.   
  1214.   code (loop_execution)
  1215.   {
  1216. !   if (++*RP == 0)        /* increment top of return stack */
  1217. !     rp += 3;            /* if zero: terminate loop */
  1218.     else
  1219. !     ip = rp[2];            /* else loop back */
  1220.   }
  1221.   
  1222.   Code (loop)
  1223. --- 843,852 ----
  1224.   
  1225.   code (loop_execution)
  1226.   {
  1227. !   if (++*RP)            /* increment top of return stack */
  1228. !     ip = rp[2];            /* if nonzero: loop back */
  1229.     else
  1230. !     rp += 3;            /* if zero: terminate loop */
  1231.   }
  1232.   
  1233.   Code (loop)
  1234. ***************
  1235. *** 950,956 ****
  1236. --- 953,962 ----
  1237.   Code (recurse)
  1238.   {
  1239.     question_comp_ ();
  1240. +   if (LAST)
  1241.       COMMA (name_from (LAST));
  1242. +   else
  1243. +     tHrow (THROW_ARG_TYPE);
  1244.   }
  1245.   
  1246.   Code (repeat)
  1247. ***************
  1248. *** 1395,1404 ****
  1249.   
  1250.   code (of_execution)
  1251.   {
  1252. !   if (sp[0] == sp[1])        /* tos equals second? */
  1253. !     sp += 2, ip++;        /* yes: drop both, don't branch */
  1254. !   else
  1255.       sp += 1, BRANCH;        /* no: drop top, branch */
  1256.   }
  1257.   
  1258.   Code (of)
  1259. --- 1401,1410 ----
  1260.   
  1261.   code (of_execution)
  1262.   {
  1263. !   if (sp[0] != sp[1])        /* tos equals second? */
  1264.       sp += 1, BRANCH;        /* no: drop top, branch */
  1265. +   else
  1266. +     sp += 2, ip++;        /* yes: drop both, don't branch */
  1267.   }
  1268.   
  1269.   Code (of)
  1270. Only in pfe-0.9.13/src: core.o
  1271. diff -cbr pfe-0-9.12/src/curses.c pfe-0.9.13/src/curses.c
  1272. *** pfe-0-9.12/src/curses.c    Fri Apr 28 18:59:09 1995
  1273. --- pfe-0.9.13/src/curses.c    Mon Jul 17 20:23:55 1995
  1274. ***************
  1275. *** 16,22 ****
  1276.    * License along with this library; if not, write to the Free
  1277.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1278.    *
  1279. !  * This file is version 0.9.12 of 28-Apr-95
  1280.    * Check for the latest version of this package via anonymous ftp at
  1281.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1282.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1283. --- 16,22 ----
  1284.    * License along with this library; if not, write to the Free
  1285.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1286.    *
  1287. !  * This file is version 0.9.13 of 17-July-95
  1288.    * Check for the latest version of this package via anonymous ftp at
  1289.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1290.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1291. diff -cbr pfe-0-9.12/src/dblsub.c pfe-0.9.13/src/dblsub.c
  1292. *** pfe-0-9.12/src/dblsub.c    Fri Apr 28 18:59:10 1995
  1293. --- pfe-0.9.13/src/dblsub.c    Mon Jul 17 20:23:55 1995
  1294. ***************
  1295. *** 16,22 ****
  1296.    * License along with this library; if not, write to the Free
  1297.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1298.    *
  1299. !  * This file is version 0.9.12 of 28-Apr-95
  1300.    * Check for the latest version of this package via anonymous ftp at
  1301.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1302.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1303. --- 16,22 ----
  1304.    * License along with this library; if not, write to the Free
  1305.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1306.    *
  1307. !  * This file is version 0.9.13 of 17-July-95
  1308.    * Check for the latest version of this package via anonymous ftp at
  1309.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1310.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1311. diff -cbr pfe-0-9.12/src/dblsub.h pfe-0.9.13/src/dblsub.h
  1312. *** pfe-0-9.12/src/dblsub.h    Fri Apr 28 18:59:03 1995
  1313. --- pfe-0.9.13/src/dblsub.h    Mon Jul 17 20:23:49 1995
  1314. ***************
  1315. *** 16,22 ****
  1316.    * License along with this library; if not, write to the Free
  1317.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1318.    *
  1319. !  * This file is version 0.9.12 of 28-Apr-95
  1320.    * Check for the latest version of this package via anonymous ftp at
  1321.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1322.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1323. --- 16,22 ----
  1324.    * License along with this library; if not, write to the Free
  1325.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1326.    *
  1327. !  * This file is version 0.9.13 of 17-July-95
  1328.    * Check for the latest version of this package via anonymous ftp at
  1329.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1330.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1331. Only in pfe-0.9.13/src: dblsub.o
  1332. diff -cbr pfe-0-9.12/src/debug.c pfe-0.9.13/src/debug.c
  1333. *** pfe-0-9.12/src/debug.c    Fri Apr 28 18:59:10 1995
  1334. --- pfe-0.9.13/src/debug.c    Mon Jul 17 20:23:56 1995
  1335. ***************
  1336. *** 16,22 ****
  1337.    * License along with this library; if not, write to the Free
  1338.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1339.    *
  1340. !  * This file is version 0.9.12 of 28-Apr-95
  1341.    * Check for the latest version of this package via anonymous ftp at
  1342.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1343.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1344. --- 16,22 ----
  1345.    * License along with this library; if not, write to the Free
  1346.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1347.    *
  1348. !  * This file is version 0.9.13 of 17-July-95
  1349.    * Check for the latest version of this package via anonymous ftp at
  1350.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1351.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1352. Only in pfe-0.9.13/src: debug.o
  1353. diff -cbr pfe-0-9.12/src/dictnry.c pfe-0.9.13/src/dictnry.c
  1354. *** pfe-0-9.12/src/dictnry.c    Fri Apr 28 18:59:10 1995
  1355. --- pfe-0.9.13/src/dictnry.c    Mon Jul 17 20:23:56 1995
  1356. ***************
  1357. *** 16,22 ****
  1358.    * License along with this library; if not, write to the Free
  1359.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1360.    *
  1361. !  * This file is version 0.9.12 of 28-Apr-95
  1362.    * Check for the latest version of this package via anonymous ftp at
  1363.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1364.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1365. --- 16,22 ----
  1366.    * License along with this library; if not, write to the Free
  1367.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1368.    *
  1369. !  * This file is version 0.9.13 of 17-July-95
  1370.    * Check for the latest version of this package via anonymous ftp at
  1371.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1372.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1373. ***************
  1374. *** 136,141 ****
  1375. --- 136,142 ----
  1376.       VOC_LINK = VOC_LINK->prev;
  1377.     /* free dictionary space: */
  1378.     DP = (Byte *) above;
  1379. +   LAST = NULL;
  1380.     if (CURRENT >= (Wordl *) above)
  1381.       tHrow (THROW_CURRENT_DELETED);
  1382.   }
  1383. ***************
  1384. *** 361,366 ****
  1385. --- 362,369 ----
  1386.   Xt
  1387.   runtime (void)
  1388.   {
  1389. +   if (!LAST)
  1390. +     tHrow (THROW_ARG_TYPE);
  1391.     return name_from (LAST);
  1392.   }
  1393.   
  1394. ***************
  1395. *** 628,633 ****
  1396. --- 631,637 ----
  1397.                preload_list[i]->wid);
  1398.   
  1399.     FENCE = DP;
  1400. +   LAST = NULL;
  1401.   
  1402.   #if defined DEBUG
  1403.     /* Maybe output some statistics: */
  1404. Only in pfe-0.9.13/src: dictnry.o
  1405. diff -cbr pfe-0-9.12/src/double.c pfe-0.9.13/src/double.c
  1406. *** pfe-0-9.12/src/double.c    Fri Apr 28 18:59:11 1995
  1407. --- pfe-0.9.13/src/double.c    Mon Jul 17 20:23:56 1995
  1408. ***************
  1409. *** 16,22 ****
  1410.    * License along with this library; if not, write to the Free
  1411.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1412.    *
  1413. !  * This file is version 0.9.12 of 28-Apr-95
  1414.    * Check for the latest version of this package via anonymous ftp at
  1415.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1416.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1417. --- 16,22 ----
  1418.    * License along with this library; if not, write to the Free
  1419.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1420.    *
  1421. !  * This file is version 0.9.13 of 17-July-95
  1422.    * Check for the latest version of this package via anonymous ftp at
  1423.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1424.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1425. Only in pfe-0.9.13/src: double.o
  1426. diff -cbr pfe-0-9.12/src/facility.c pfe-0.9.13/src/facility.c
  1427. *** pfe-0-9.12/src/facility.c    Fri Apr 28 18:59:11 1995
  1428. --- pfe-0.9.13/src/facility.c    Mon Jul 17 20:23:56 1995
  1429. ***************
  1430. *** 16,22 ****
  1431.    * License along with this library; if not, write to the Free
  1432.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1433.    *
  1434. !  * This file is version 0.9.12 of 28-Apr-95
  1435.    * Check for the latest version of this package via anonymous ftp at
  1436.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1437.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1438. --- 16,22 ----
  1439.    * License along with this library; if not, write to the Free
  1440.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1441.    *
  1442. !  * This file is version 0.9.13 of 17-July-95
  1443.    * Check for the latest version of this package via anonymous ftp at
  1444.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1445.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1446. Only in pfe-0.9.13/src: facility.o
  1447. diff -cbr pfe-0-9.12/src/file.c pfe-0.9.13/src/file.c
  1448. *** pfe-0-9.12/src/file.c    Fri Apr 28 18:59:11 1995
  1449. --- pfe-0.9.13/src/file.c    Mon Jul 17 20:23:57 1995
  1450. ***************
  1451. *** 16,22 ****
  1452.    * License along with this library; if not, write to the Free
  1453.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1454.    *
  1455. !  * This file is version 0.9.12 of 28-Apr-95
  1456.    * Check for the latest version of this package via anonymous ftp at
  1457.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1458.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1459. --- 16,22 ----
  1460.    * License along with this library; if not, write to the Free
  1461.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1462.    *
  1463. !  * This file is version 0.9.13 of 17-July-95
  1464.    * Check for the latest version of this package via anonymous ftp at
  1465.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1466.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1467. ***************
  1468. *** 78,84 ****
  1469.   Code (file_position)
  1470.   {
  1471.     File *fid = (File *) sp[0];    /* file-id */
  1472. !   fpos_t pos = ftell (fid->f);
  1473.     udCell ud;
  1474.   
  1475.     sp -= 2;
  1476. --- 78,84 ----
  1477.   Code (file_position)
  1478.   {
  1479.     File *fid = (File *) sp[0];    /* file-id */
  1480. !   long pos = ftell (fid->f);
  1481.     udCell ud;
  1482.   
  1483.     sp -= 2;
  1484. ***************
  1485. *** 98,104 ****
  1486.   Code (file_size)
  1487.   {
  1488.     File *fid = (File *) sp[0];    /* fileid */
  1489. !   fpos_t size = fsize (fid->f);
  1490.     udCell ud;
  1491.   
  1492.     sp -= 2;
  1493. --- 98,104 ----
  1494.   Code (file_size)
  1495.   {
  1496.     File *fid = (File *) sp[0];    /* fileid */
  1497. !   long size = fsize (fid->f);
  1498.     udCell ud;
  1499.   
  1500.     sp -= 2;
  1501. ***************
  1502. *** 169,175 ****
  1503.   Code (reposition_file)
  1504.   {
  1505.     File *fid = (File *) sp[0];
  1506. !   fpos_t pos = UDC2UL (sp[1], sp[2]);
  1507.   
  1508.     sp += 2;
  1509.     sp[0] = reposition_file (fid, pos);
  1510. --- 169,175 ----
  1511.   Code (reposition_file)
  1512.   {
  1513.     File *fid = (File *) sp[0];
  1514. !   long pos = UDC2UL (sp[1], sp[2]);
  1515.   
  1516.     sp += 2;
  1517.     sp[0] = reposition_file (fid, pos);
  1518. ***************
  1519. *** 178,184 ****
  1520.   Code (resize_file)
  1521.   {
  1522.     File *fid = (File *) sp[0];
  1523. !   fpos_t size = UDC2UL (sp[1], sp[2]);
  1524.   
  1525.     sp += 2;
  1526.     if (resize_file (fid, size) != 0)
  1527. --- 178,184 ----
  1528.   Code (resize_file)
  1529.   {
  1530.     File *fid = (File *) sp[0];
  1531. !   long size = UDC2UL (sp[1], sp[2]);
  1532.   
  1533.     sp += 2;
  1534.     if (resize_file (fid, size) != 0)
  1535. Only in pfe-0.9.13/src: file.o
  1536. diff -cbr pfe-0-9.12/src/filesub.c pfe-0.9.13/src/filesub.c
  1537. *** pfe-0-9.12/src/filesub.c    Fri Apr 28 18:59:11 1995
  1538. --- pfe-0.9.13/src/filesub.c    Mon Jul 17 20:23:57 1995
  1539. ***************
  1540. *** 16,22 ****
  1541.    * License along with this library; if not, write to the Free
  1542.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1543.    *
  1544. !  * This file is version 0.9.12 of 28-Apr-95
  1545.    * Check for the latest version of this package via anonymous ftp at
  1546.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1547.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1548. --- 16,22 ----
  1549.    * License along with this library; if not, write to the Free
  1550.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1551.    *
  1552. !  * This file is version 0.9.13 of 17-July-95
  1553.    * Check for the latest version of this package via anonymous ftp at
  1554.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1555.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1556. ***************
  1557. *** 91,97 ****
  1558.   }
  1559.   #endif
  1560.   
  1561. ! fpos_t
  1562.   fsize (FILE * f)        /* Result: file length, -1 on error */
  1563.   {
  1564.   #if defined HAVE_FSTAT && defined HAVE_FILENO
  1565. --- 91,97 ----
  1566.   }
  1567.   #endif
  1568.   
  1569. ! long
  1570.   fsize (FILE * f)        /* Result: file length, -1 on error */
  1571.   {
  1572.   #if defined HAVE_FSTAT && defined HAVE_FILENO
  1573. ***************
  1574. *** 105,111 ****
  1575.   
  1576.   #else
  1577.   
  1578. !   fpos_t pos, len;        /* ANSI-C version using fseek()/ftell() */
  1579.   
  1580.     clearerr (f);
  1581.     pos = ftell (f);
  1582. --- 105,111 ----
  1583.   
  1584.   #else
  1585.   
  1586. !   long pos, len;        /* ANSI-C version using fseek()/ftell() */
  1587.   
  1588.     clearerr (f);
  1589.     pos = ftell (f);
  1590. ***************
  1591. *** 121,127 ****
  1592.   #endif
  1593.   }
  1594.   
  1595. ! fpos_t
  1596.   size (const char *fn)        /* Result: file length, -1 on error */
  1597.   {
  1598.   #if defined HAVE_STAT
  1599. --- 121,127 ----
  1600.   #endif
  1601.   }
  1602.   
  1603. ! long
  1604.   size (const char *fn)        /* Result: file length, -1 on error */
  1605.   {
  1606.   #if defined HAVE_STAT
  1607. ***************
  1608. *** 135,141 ****
  1609.   #else
  1610.   
  1611.     FILE *f;
  1612. !   fpos_t len;
  1613.   
  1614.     f = fopen (fn, "r");
  1615.     if (f == NULL)
  1616. --- 135,141 ----
  1617.   #else
  1618.   
  1619.     FILE *f;
  1620. !   long len;
  1621.   
  1622.     f = fopen (fn, "r");
  1623.     if (f == NULL)
  1624. ***************
  1625. *** 147,154 ****
  1626.   #endif
  1627.   }
  1628.   
  1629. ! fpos_t
  1630. ! copy (const char *src, const char *dst, fpos_t limit)
  1631.   /*
  1632.    * Copies file, but at most limit characters.
  1633.    * Returns destination file length if successful, -1 otherwise.
  1634. --- 147,154 ----
  1635.   #endif
  1636.   }
  1637.   
  1638. ! long
  1639. ! copy (const char *src, const char *dst, long limit)
  1640.   /*
  1641.    * Copies file, but at most limit characters.
  1642.    * Returns destination file length if successful, -1 otherwise.
  1643. ***************
  1644. *** 157,170 ****
  1645.     FILE *f, *g;
  1646.     char buf[BUFSIZ];
  1647.     size_t n;
  1648. !   fpos_t m;
  1649.   
  1650.     if ((f = fopen (src, "rb")) == NULL)
  1651. !     return (fpos_t)-1;
  1652.     if ((g = fopen (dst, "wb")) == NULL)
  1653.       {
  1654.         fclose (f);
  1655. !       return (fpos_t)-1;
  1656.       }
  1657.     for (m = limit; m; m -= n)
  1658.       {
  1659. --- 157,170 ----
  1660.     FILE *f, *g;
  1661.     char buf[BUFSIZ];
  1662.     size_t n;
  1663. !   long m;
  1664.   
  1665.     if ((f = fopen (src, "rb")) == NULL)
  1666. !     return -1;
  1667.     if ((g = fopen (dst, "wb")) == NULL)
  1668.       {
  1669.         fclose (f);
  1670. !       return -1;
  1671.       }
  1672.     for (m = limit; m; m -= n)
  1673.       {
  1674. ***************
  1675. *** 176,182 ****
  1676.     n = ferror (f) || ferror (g);
  1677.     fclose (f);
  1678.     fclose (g);
  1679. !   return n ? (fpos_t)-1 : limit - m;
  1680.   }
  1681.   
  1682.   int
  1683. --- 176,182 ----
  1684.     n = ferror (f) || ferror (g);
  1685.     fclose (f);
  1686.     fclose (g);
  1687. !   return n ? -1 : limit - m;
  1688.   }
  1689.   
  1690.   int
  1691. ***************
  1692. *** 199,207 ****
  1693.   }
  1694.   
  1695.   static int
  1696. ! fextend (FILE * f, fpos_t size)    /* make file longer */
  1697.   {
  1698. !   fpos_t n;
  1699.   
  1700.     if (fseek (f, 0, SEEK_END) != 0)
  1701.       return -1;
  1702. --- 199,207 ----
  1703.   }
  1704.   
  1705.   static int
  1706. ! fextend (FILE * f, long size)    /* make file longer */
  1707.   {
  1708. !   long n;
  1709.   
  1710.     if (fseek (f, 0, SEEK_END) != 0)
  1711.       return -1;
  1712. ***************
  1713. *** 212,218 ****
  1714.   }
  1715.   
  1716.   static int
  1717. ! extend (const char *fn, fpos_t size)
  1718.   {
  1719.     FILE *f;
  1720.     int result;
  1721. --- 212,218 ----
  1722.   }
  1723.   
  1724.   static int
  1725. ! extend (const char *fn, long size)
  1726.   {
  1727.     FILE *f;
  1728.     int result;
  1729. ***************
  1730. *** 230,236 ****
  1731.   truncate (const char *path, long length)
  1732.   {
  1733.     char tfn[L_tmpnam];
  1734. !   fpos_t len;
  1735.   
  1736.     tmpnam (tfn);
  1737.     len = copy (path, tfn, length);
  1738. --- 230,236 ----
  1739.   truncate (const char *path, long length)
  1740.   {
  1741.     char tfn[L_tmpnam];
  1742. !   long len;
  1743.   
  1744.     tmpnam (tfn);
  1745.     len = copy (path, tfn, length);
  1746. ***************
  1747. *** 247,262 ****
  1748.   #endif
  1749.   
  1750.   int
  1751. ! resize (const char *fn, fpos_t new_size)
  1752.   /*
  1753.    * Truncates or extends file.
  1754.    * Returns 0 if successful, -1 otherwise.
  1755.    */
  1756.   {
  1757. !   fpos_t old_size;
  1758.   
  1759.     old_size = size (fn);
  1760. !   if (old_size == (fpos_t) - 1)
  1761.       return -1;
  1762.     if (old_size <= new_size)
  1763.       return extend (fn, new_size);
  1764. --- 247,262 ----
  1765.   #endif
  1766.   
  1767.   int
  1768. ! resize (const char *fn, long new_size)
  1769.   /*
  1770.    * Truncates or extends file.
  1771.    * Returns 0 if successful, -1 otherwise.
  1772.    */
  1773.   {
  1774. !   long old_size;
  1775.   
  1776.     old_size = size (fn);
  1777. !   if (old_size == -1)
  1778.       return -1;
  1779.     if (old_size <= new_size)
  1780.       return extend (fn, new_size);
  1781. Only in pfe-0.9.13/src: filesub.o
  1782. diff -cbr pfe-0-9.12/src/floating.c pfe-0.9.13/src/floating.c
  1783. *** pfe-0-9.12/src/floating.c    Fri Apr 28 18:59:12 1995
  1784. --- pfe-0.9.13/src/floating.c    Mon Jul 17 20:23:57 1995
  1785. ***************
  1786. *** 16,22 ****
  1787.    * License along with this library; if not, write to the Free
  1788.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1789.    *
  1790. !  * This file is version 0.9.12 of 28-Apr-95
  1791.    * Check for the latest version of this package via anonymous ftp at
  1792.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1793.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1794. --- 16,22 ----
  1795.    * License along with this library; if not, write to the Free
  1796.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1797.    *
  1798. !  * This file is version 0.9.13 of 17-July-95
  1799.    * Check for the latest version of this package via anonymous ftp at
  1800.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1801.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1802. ***************
  1803. *** 282,288 ****
  1804. --- 282,293 ----
  1805.       sign = 1, dnegate ((dCell *) &sp[0]);
  1806.     else
  1807.       sign = 0;
  1808. + #if Linux
  1809. +   /* slackware 2.2.0.1 (at least) has a bug in ldexp()  */
  1810. +   res = (uCell) sp[0] * ((double)(1<<31) * 2) + (uCell) sp[1];
  1811. + #else
  1812.     res = ldexp ((uCell) sp[0], CELLBITS) + (uCell) sp[1];
  1813. + #endif
  1814.     sp += 2;
  1815.     *--fp = sign ? -res : res;
  1816.   }
  1817. Only in pfe-0.9.13/src: floating.o
  1818. diff -cbr pfe-0-9.12/src/forth-83.c pfe-0.9.13/src/forth-83.c
  1819. *** pfe-0-9.12/src/forth-83.c    Fri Apr 28 18:59:12 1995
  1820. --- pfe-0.9.13/src/forth-83.c    Mon Jul 17 20:23:57 1995
  1821. ***************
  1822. *** 16,22 ****
  1823.    * License along with this library; if not, write to the Free
  1824.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1825.    *
  1826. !  * This file is version 0.9.12 of 28-Apr-95
  1827.    * Check for the latest version of this package via anonymous ftp at
  1828.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1829.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1830. --- 16,22 ----
  1831.    * License along with this library; if not, write to the Free
  1832.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1833.    *
  1834. !  * This file is version 0.9.13 of 17-July-95
  1835.    * Check for the latest version of this package via anonymous ftp at
  1836.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1837.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1838. Only in pfe-0.9.13/src: forth-83.o
  1839. diff -cbr pfe-0-9.12/src/forth.h pfe-0.9.13/src/forth.h
  1840. *** pfe-0-9.12/src/forth.h    Fri Apr 28 18:59:04 1995
  1841. --- pfe-0.9.13/src/forth.h    Mon Jul 17 20:23:49 1995
  1842. ***************
  1843. *** 16,22 ****
  1844.    * License along with this library; if not, write to the Free
  1845.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1846.    *
  1847. !  * This file is version 0.9.12 of 28-Apr-95
  1848.    * Check for the latest version of this package via anonymous ftp at
  1849.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1850.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1851. --- 16,22 ----
  1852.    * License along with this library; if not, write to the Free
  1853.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1854.    *
  1855. !  * This file is version 0.9.13 of 17-July-95
  1856.    * Check for the latest version of this package via anonymous ftp at
  1857.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  1858.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  1859. diff -cbr pfe-0-9.12/src/guesscfg.sh pfe-0.9.13/src/guesscfg.sh
  1860. *** pfe-0-9.12/src/guesscfg.sh    Fri Apr 28 12:10:45 1995
  1861. --- pfe-0.9.13/src/guesscfg.sh    Thu May 18 20:36:19 1995
  1862. ***************
  1863. *** 3,9 ****
  1864.   # guesscfg.sh -    Create a config.h file based on guesses.
  1865.   #        Called by `config.sh' like this:
  1866.   #
  1867. ! #            guesscfg.sh $system > config.h
  1868.   #
  1869.   # This script produces just a first guess that might be ok if your system's
  1870.   # include files are sane -- i.e. rarely.
  1871. --- 3,9 ----
  1872.   # guesscfg.sh -    Create a config.h file based on guesses.
  1873.   #        Called by `config.sh' like this:
  1874.   #
  1875. ! #            . ./guesscfg.sh $system
  1876.   #
  1877.   # This script produces just a first guess that might be ok if your system's
  1878.   # include files are sane -- i.e. rarely.
  1879. ***************
  1880. *** 25,31 ****
  1881.       e=.exe        # executable file extension
  1882.       null=NUL        # null-device name
  1883.       ;;
  1884. !   WATCOM)
  1885.       o=.obj
  1886.       e=.exe
  1887.       null=NUL
  1888. --- 25,31 ----
  1889.       e=.exe        # executable file extension
  1890.       null=NUL        # null-device name
  1891.       ;;
  1892. !   WATCOM|OS2-ICC)
  1893.       o=.obj
  1894.       e=.exe
  1895.       null=NUL
  1896. ***************
  1897. *** 42,48 ****
  1898.   #
  1899.   
  1900.   tmpc=tmp$$
  1901. ! trap "rm -f $tmpc.*; exit 0" 0 1 2 3 15
  1902.   
  1903.   if [ "`echo -n asdf`" = "asdf" ]
  1904.   then
  1905. --- 42,48 ----
  1906.   #
  1907.   
  1908.   tmpc=tmp$$
  1909. ! trap "rm -f $tmpc*; exit 0" 0 1 2 3 15
  1910.   
  1911.   if [ "`echo -n asdf`" = "asdf" ]
  1912.   then
  1913. ***************
  1914. *** 66,74 ****
  1915.   
  1916.   hasinc ()        # test if an include file is available
  1917.   {
  1918. -   rm -f $tmpc.i
  1919.     echo_n "$1 ... " >&2
  1920.     echo "#include <$1>" > $tmpc.c
  1921.     if $make $tmpc.i >$null 2>&1
  1922.     then
  1923.       echo "yes" >&2
  1924. --- 66,74 ----
  1925.   
  1926.   hasinc ()        # test if an include file is available
  1927.   {
  1928.     echo_n "$1 ... " >&2
  1929.     echo "#include <$1>" > $tmpc.c
  1930. +   rm -f $tmpc.i
  1931.     if $make $tmpc.i >$null 2>&1
  1932.     then
  1933.       echo "yes" >&2
  1934. ***************
  1935. *** 124,130 ****
  1936.     echo_n "$1 ... " >&2
  1937.     shift
  1938.   
  1939. !   rm -f $tmpc.c
  1940.     for i
  1941.     do
  1942.       echo $i >> $tmpc.c
  1943. --- 124,130 ----
  1944.     echo_n "$1 ... " >&2
  1945.     shift
  1946.   
  1947. !   rm -f $tmpc.c $tmpc$o
  1948.     for i
  1949.     do
  1950.       echo $i >> $tmpc.c
  1951. ***************
  1952. *** 137,143 ****
  1953.       return 0
  1954.     else
  1955.       echo "no" >&2
  1956. !     rm -f $tmpc.c $tmpc.i
  1957.       return 1
  1958.     fi
  1959.   }
  1960. --- 137,143 ----
  1961.       return 0
  1962.     else
  1963.       echo "no" >&2
  1964. !     rm -f $tmpc.c $tmpc$o
  1965.       return 1
  1966.     fi
  1967.   }
  1968. ***************
  1969. *** 147,152 ****
  1970. --- 147,154 ----
  1971.   # Start output of `config.h':
  1972.   #
  1973.   
  1974. + {
  1975.   echo "/*
  1976.    * config.h --    Automatically generated file, don't change.
  1977.    */
  1978. ***************
  1979. *** 188,227 ****
  1980.   
  1981.   
  1982.   #
  1983. - # Determine Cell type, byte sex and alignment restrictions:
  1984. - #
  1985. - $make clean >&2
  1986. - rm -f check_c$e check_c$o
  1987. - if $make check_c$e >&2
  1988. - then
  1989. -   ./check_c$e
  1990. -   rm -f check_c$e check_c$o
  1991. - else
  1992. -   echo compiling test program failed >&2
  1993. -   echo aborting. >&2
  1994. -   rm -f check_c$e check_c$o
  1995. -   rm -f $config_h
  1996. -   exit 1
  1997. - fi
  1998. - if compile const \
  1999. -    "const char *p;"
  2000. - then : # ok, compiler did grok const.
  2001. - else
  2002. -   echo "#define const"
  2003. - fi
  2004. - if compile "ANSI cpp" \
  2005. -    "#define STR(X) #X" \
  2006. -    "char s [] = STR(asdf);"
  2007. - then : # ok, compiler did understand #X substitution.
  2008. - else
  2009. -   define OLDCPP
  2010. - fi
  2011. - #
  2012.   # prepare for "nonansi.h", check available include files.
  2013.   #
  2014.   
  2015. --- 190,195 ----
  2016. ***************
  2017. *** 468,475 ****
  2018.     define HAVE_OSPEED
  2019.   fi
  2020.   
  2021.   echo "
  2022. ! #endif"
  2023.   
  2024.   # Some shells need this explicitly to execute the trap-code.
  2025.   exit 0
  2026. --- 436,491 ----
  2027.     define HAVE_OSPEED
  2028.   fi
  2029.   
  2030. + if has optind getopt.h $funnyincs
  2031. + then
  2032. +   : # I assume optarg is defined too.
  2033. + else
  2034. +   echo "extern int optind;"
  2035. +   echo "extern char *optarg;"
  2036. + fi
  2037. + #
  2038. + # Compiler properties.
  2039. + #
  2040. + if compile const \
  2041. +    "const char *p;"
  2042. + then : # ok, compiler did grok const.
  2043. + else
  2044. +   echo "#define const"
  2045. + fi
  2046. + if compile "ANSI cpp" \
  2047. +    "#define STR(X) #X" \
  2048. +    "char s [] = STR(asdf);"
  2049. + then : # ok, compiler did understand #X substitution.
  2050. + else
  2051. +   define OLDCPP
  2052. + fi
  2053. + } > config.h
  2054. + #
  2055. + # Determine Cell type, byte sex and alignment restrictions:
  2056. + #
  2057. + $make clean >&2
  2058. + rm -f check_c$e check_c$o
  2059. + if $make check_c$e >&2
  2060. + then
  2061. +   ./check_c$e >> config.h
  2062. +   rm -f check_c$e check_c$o
  2063. + else
  2064. +   echo compiling test program failed >&2
  2065. +   echo aborting. >&2
  2066. +   rm -f check_c$e check_c$o
  2067. +   exit 1
  2068. + fi
  2069.   echo "
  2070. ! #endif" >> config.h
  2071.   
  2072.   # Some shells need this explicitly to execute the trap-code.
  2073.   exit 0
  2074. diff -cbr pfe-0-9.12/src/help.h pfe-0.9.13/src/help.h
  2075. *** pfe-0-9.12/src/help.h    Fri Apr 28 18:59:04 1995
  2076. --- pfe-0.9.13/src/help.h    Mon Jul 17 20:23:49 1995
  2077. ***************
  2078. *** 16,22 ****
  2079.    * License along with this library; if not, write to the Free
  2080.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2081.    *
  2082. !  * This file is version 0.9.12 of 28-Apr-95
  2083.    * Check for the latest version of this package via anonymous ftp at
  2084.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2085.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2086. --- 16,22 ----
  2087.    * License along with this library; if not, write to the Free
  2088.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2089.    *
  2090. !  * This file is version 0.9.13 of 17-July-95
  2091.    * Check for the latest version of this package via anonymous ftp at
  2092.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2093.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2094. ***************
  2095. *** 51,57 ****
  2096.   {
  2097.     char name [32];        /* name of the definition */
  2098.     int fidx;            /* index of file, see head */
  2099. !   fpos_t pos;            /* position in file */
  2100.   };
  2101.   
  2102.   extern char *progname;
  2103. --- 51,57 ----
  2104.   {
  2105.     char name [32];        /* name of the definition */
  2106.     int fidx;            /* index of file, see head */
  2107. !   long pos;            /* position in file */
  2108.   };
  2109.   
  2110.   extern char *progname;
  2111. Only in pfe-0.9.13/src: helpidx
  2112. diff -cbr pfe-0-9.12/src/helpidx.c pfe-0.9.13/src/helpidx.c
  2113. *** pfe-0-9.12/src/helpidx.c    Fri Apr 28 18:59:12 1995
  2114. --- pfe-0.9.13/src/helpidx.c    Mon Jul 17 20:23:58 1995
  2115. ***************
  2116. *** 16,22 ****
  2117.    * License along with this library; if not, write to the Free
  2118.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2119.    *
  2120. !  * This file is version 0.9.12 of 28-Apr-95
  2121.    * Check for the latest version of this package via anonymous ftp at
  2122.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2123.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2124. --- 16,22 ----
  2125.    * License along with this library; if not, write to the Free
  2126.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2127.    *
  2128. !  * This file is version 0.9.13 of 17-July-95
  2129.    * Check for the latest version of this package via anonymous ftp at
  2130.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2131.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2132. ***************
  2133. *** 43,57 ****
  2134.   #include <string.h>
  2135.   
  2136.   #if defined HAVE_GETOPT_H
  2137. ! #include <getopt.h>
  2138. ! #elif defined NeXTstep
  2139. ! #include <libc.h>
  2140. ! #elif defined ULTRIX
  2141. ! extern char *optarg;
  2142. ! extern int optind, opterr;
  2143.   #endif
  2144.   
  2145.   #include "help.h"
  2146.   
  2147.   #define NEW(P,N)    ((P) = xalloc ((N) * sizeof *(P)))
  2148. --- 43,59 ----
  2149.   #include <string.h>
  2150.   
  2151.   #if defined HAVE_GETOPT_H
  2152. ! # include <getopt.h>
  2153. ! #else
  2154. ! # if defined HAVE_LIBC_H
  2155. ! #  include <libc.h>
  2156. ! # endif
  2157. ! # if defined HAVE_UNISTD_H
  2158. ! #  include <unistd.h>
  2159. ! # endif
  2160.   #endif
  2161.   
  2162. + #include "missing.h"        /* SEEK_SET */
  2163.   #include "help.h"
  2164.   
  2165.   #define NEW(P,N)    ((P) = xalloc ((N) * sizeof *(P)))
  2166. ***************
  2167. *** 67,82 ****
  2168.       Node *left, *right;
  2169.     };
  2170.   
  2171. ! static HHeader hheader =
  2172. ! {
  2173. !   {'H', 'E', 'L', 'P'}};
  2174.   static char (*file)[PATH_LENGTH];
  2175.   static Node *root = NULL;
  2176.   
  2177. ! static void
  2178.   insert (HRecord *new)
  2179.   /*
  2180.    * Insert *new into a binary tree starting at root.
  2181.    */
  2182.   {
  2183.     Node **p = &root, *q;
  2184. --- 69,83 ----
  2185.       Node *left, *right;
  2186.     };
  2187.   
  2188. ! static HHeader hheader = {{'H', 'E', 'L', 'P'}};
  2189.   static char (*file)[PATH_LENGTH];
  2190.   static Node *root = NULL;
  2191.   
  2192. ! static int
  2193.   insert (HRecord *new)
  2194.   /*
  2195.    * Insert *new into a binary tree starting at root.
  2196. +  * Result: 1 if ok, 0 if record with same name already in tree.
  2197.    */
  2198.   {
  2199.     Node **p = &root, *q;
  2200. ***************
  2201. *** 88,94 ****
  2202.         if (cmp == 0)
  2203.       {
  2204.         fprintf (stderr, "\"%s\" is redefined\n", new->name);
  2205. !       return;
  2206.       }
  2207.         if (cmp < 0)
  2208.       p = &(*p)->left;
  2209. --- 89,95 ----
  2210.         if (cmp == 0)
  2211.       {
  2212.         fprintf (stderr, "\"%s\" is redefined\n", new->name);
  2213. !       return 0;
  2214.       }
  2215.         if (cmp < 0)
  2216.       p = &(*p)->left;
  2217. ***************
  2218. *** 99,111 ****
  2219.     q->rec = *new;
  2220.     q->left = q->right = NULL;
  2221.     *p = q;
  2222.   }
  2223.   
  2224.   /*
  2225.    * Read records from file and insert them in the tree.
  2226.    */
  2227.   
  2228. ! static fpos_t
  2229.   scan_record (FILE * f, char *name)
  2230.   /*
  2231.    * Reads the file until a `:' is found in column 0. Returns the name in *name.
  2232. --- 100,113 ----
  2233.     q->rec = *new;
  2234.     q->left = q->right = NULL;
  2235.     *p = q;
  2236. +   return 1;
  2237.   }
  2238.   
  2239.   /*
  2240.    * Read records from file and insert them in the tree.
  2241.    */
  2242.   
  2243. ! static long
  2244.   scan_record (FILE * f, char *name)
  2245.   /*
  2246.    * Reads the file until a `:' is found in column 0. Returns the name in *name.
  2247. ***************
  2248. *** 114,120 ****
  2249.   {
  2250.     for (;;)
  2251.       {
  2252. !       fpos_t pos = ftell (f);
  2253.         char line[0x80];
  2254.         char *p = fgets (line, sizeof line, f);
  2255.   
  2256. --- 116,122 ----
  2257.   {
  2258.     for (;;)
  2259.       {
  2260. !       long pos = ftell (f);
  2261.         char line[0x80];
  2262.         char *p = fgets (line, sizeof line, f);
  2263.   
  2264. ***************
  2265. *** 134,140 ****
  2266.   }
  2267.   
  2268.   static void
  2269. ! skip_record (FILE * f)
  2270.   /*
  2271.    * Skip over all lines in file until either two empty lines
  2272.    * or a `:' in column 0 is found.
  2273. --- 136,142 ----
  2274.   }
  2275.   
  2276.   static void
  2277. ! skip_record (FILE* f)
  2278.   /*
  2279.    * Skip over all lines in file until either two empty lines
  2280.    * or a `:' in column 0 is found.
  2281. ***************
  2282. *** 144,150 ****
  2283.   
  2284.     for (;;)
  2285.       {
  2286. !       fpos_t pos = ftell (f);
  2287.         char line[0x80];
  2288.         char *p = fgets (line, sizeof line, f);
  2289.   
  2290. --- 146,152 ----
  2291.   
  2292.     for (;;)
  2293.       {
  2294. !       long pos = ftell (f);
  2295.         char line[0x80];
  2296.         char *p = fgets (line, sizeof line, f);
  2297.   
  2298. ***************
  2299. *** 171,177 ****
  2300.   }
  2301.   
  2302.   static void
  2303. ! read_file (FILE * f, int fidx)
  2304.   {
  2305.     HRecord x;
  2306.   
  2307. --- 173,179 ----
  2308.   }
  2309.   
  2310.   static void
  2311. ! read_file (FILE *f, int fidx)
  2312.   {
  2313.     HRecord x;
  2314.   
  2315. ***************
  2316. *** 182,188 ****
  2317.         if (x.pos == -1)
  2318.       return;
  2319.         skip_record (f);
  2320. !       insert (&x);
  2321.         hheader.nitems++;
  2322.       }
  2323.   }
  2324. --- 184,190 ----
  2325.         if (x.pos == -1)
  2326.       return;
  2327.         skip_record (f);
  2328. !       if (insert (&x))
  2329.       hheader.nitems++;
  2330.       }
  2331.   }
  2332. Only in pfe-0.9.13/src: helpidx.o
  2333. diff -cbr pfe-0-9.12/src/helpsub.c pfe-0.9.13/src/helpsub.c
  2334. *** pfe-0-9.12/src/helpsub.c    Fri Apr 28 18:59:12 1995
  2335. --- pfe-0.9.13/src/helpsub.c    Mon Jul 17 20:23:58 1995
  2336. ***************
  2337. *** 16,22 ****
  2338.    * License along with this library; if not, write to the Free
  2339.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2340.    *
  2341. !  * This file is version 0.9.12 of 28-Apr-95
  2342.    * Check for the latest version of this package via anonymous ftp at
  2343.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2344.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2345. --- 16,22 ----
  2346.    * License along with this library; if not, write to the Free
  2347.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2348.    *
  2349. !  * This file is version 0.9.13 of 17-July-95
  2350.    * Check for the latest version of this package via anonymous ftp at
  2351.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2352.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2353. Only in pfe-0.9.13/src: helpsub.o
  2354. diff -cbr pfe-0-9.12/src/indent.opt pfe-0.9.13/src/indent.opt
  2355. *** pfe-0-9.12/src/indent.opt    Wed Apr 19 14:09:36 1995
  2356. --- pfe-0.9.13/src/indent.opt    Thu May 11 16:15:39 1995
  2357. ***************
  2358. *** 2,7 ****
  2359. --- 2,10 ----
  2360.   -c33 -cp33 -cd33
  2361.   -sc
  2362.   -psl
  2363. + -T FILE
  2364. + -T fpos_t
  2365. + -T size_t
  2366.   -T Cell
  2367.   -T uCell
  2368.   -T dCell
  2369. diff -cbr pfe-0-9.12/src/lined.c pfe-0.9.13/src/lined.c
  2370. *** pfe-0-9.12/src/lined.c    Fri Apr 28 18:59:13 1995
  2371. --- pfe-0.9.13/src/lined.c    Mon Jul 17 20:23:58 1995
  2372. ***************
  2373. *** 16,22 ****
  2374.    * License along with this library; if not, write to the Free
  2375.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2376.    *
  2377. !  * This file is version 0.9.12 of 28-Apr-95
  2378.    * Check for the latest version of this package via anonymous ftp at
  2379.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2380.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2381. --- 16,22 ----
  2382.    * License along with this library; if not, write to the Free
  2383.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2384.    *
  2385. !  * This file is version 0.9.13 of 17-July-95
  2386.    * Check for the latest version of this package via anonymous ftp at
  2387.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2388.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2389. diff -cbr pfe-0-9.12/src/lined.h pfe-0.9.13/src/lined.h
  2390. *** pfe-0-9.12/src/lined.h    Fri Apr 28 18:59:04 1995
  2391. --- pfe-0.9.13/src/lined.h    Mon Jul 17 20:23:49 1995
  2392. ***************
  2393. *** 16,22 ****
  2394.    * License along with this library; if not, write to the Free
  2395.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2396.    *
  2397. !  * This file is version 0.9.12 of 28-Apr-95
  2398.    * Check for the latest version of this package via anonymous ftp at
  2399.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2400.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2401. --- 16,22 ----
  2402.    * License along with this library; if not, write to the Free
  2403.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2404.    *
  2405. !  * This file is version 0.9.13 of 17-July-95
  2406.    * Check for the latest version of this package via anonymous ftp at
  2407.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2408.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2409. Only in pfe-0.9.13/src: lined.o
  2410. diff -cbr pfe-0-9.12/src/locals.c pfe-0.9.13/src/locals.c
  2411. *** pfe-0-9.12/src/locals.c    Fri Apr 28 18:59:13 1995
  2412. --- pfe-0.9.13/src/locals.c    Mon Jul 17 20:23:58 1995
  2413. ***************
  2414. *** 16,22 ****
  2415.    * License along with this library; if not, write to the Free
  2416.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2417.    *
  2418. !  * This file is version 0.9.12 of 28-Apr-95
  2419.    * Check for the latest version of this package via anonymous ftp at
  2420.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2421.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2422. --- 16,22 ----
  2423.    * License along with this library; if not, write to the Free
  2424.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2425.    *
  2426. !  * This file is version 0.9.13 of 17-July-95
  2427.    * Check for the latest version of this package via anonymous ftp at
  2428.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2429.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2430. Only in pfe-0.9.13/src: locals.o
  2431. diff -cbr pfe-0-9.12/src/lpf83.c pfe-0.9.13/src/lpf83.c
  2432. *** pfe-0-9.12/src/lpf83.c    Fri Apr 28 18:59:13 1995
  2433. --- pfe-0.9.13/src/lpf83.c    Mon Jul 17 20:23:59 1995
  2434. ***************
  2435. *** 16,22 ****
  2436.    * License along with this library; if not, write to the Free
  2437.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2438.    *
  2439. !  * This file is version 0.9.12 of 28-Apr-95
  2440.    * Check for the latest version of this package via anonymous ftp at
  2441.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2442.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2443. --- 16,22 ----
  2444.    * License along with this library; if not, write to the Free
  2445.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2446.    *
  2447. !  * This file is version 0.9.13 of 17-July-95
  2448.    * Check for the latest version of this package via anonymous ftp at
  2449.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2450.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2451. Only in pfe-0.9.13/src: lpf83.o
  2452. diff -cbr pfe-0-9.12/src/macros.h pfe-0.9.13/src/macros.h
  2453. *** pfe-0-9.12/src/macros.h    Fri Apr 28 18:59:04 1995
  2454. --- pfe-0.9.13/src/macros.h    Mon Jul 17 20:23:50 1995
  2455. ***************
  2456. *** 16,22 ****
  2457.    * License along with this library; if not, write to the Free
  2458.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2459.    *
  2460. !  * This file is version 0.9.12 of 28-Apr-95
  2461.    * Check for the latest version of this package via anonymous ftp at
  2462.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2463.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2464. --- 16,22 ----
  2465.    * License along with this library; if not, write to the Free
  2466.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2467.    *
  2468. !  * This file is version 0.9.13 of 17-July-95
  2469.    * Check for the latest version of this package via anonymous ftp at
  2470.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2471.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2472. ***************
  2473. *** 82,91 ****
  2474.   #define STRING(X)    "X"
  2475.   #define APPEND(X,Y)    X/**/Y
  2476.   #else
  2477. ! #define _STRG_(X)    #X
  2478. ! #define STRING(X)    _STRG_(X)
  2479.   #define APPEND(X,Y)    X##Y
  2480.   #endif
  2481.   
  2482.   #define code(X)        void APPEND(X,_) (void)    /* declare a primitive */
  2483.   #define Code(X)        static code (X)        /* declare a local primitive */
  2484. --- 82,91 ----
  2485.   #define STRING(X)    "X"
  2486.   #define APPEND(X,Y)    X/**/Y
  2487.   #else
  2488. ! #define STRING(X)    #X
  2489.   #define APPEND(X,Y)    X##Y
  2490.   #endif
  2491. + #define STRING1(X)    STRING(X)
  2492.   
  2493.   #define code(X)        void APPEND(X,_) (void)    /* declare a primitive */
  2494.   #define Code(X)        static code (X)        /* declare a local primitive */
  2495. diff -cbr pfe-0-9.12/src/main.c pfe-0.9.13/src/main.c
  2496. *** pfe-0-9.12/src/main.c    Fri Apr 28 18:59:14 1995
  2497. --- pfe-0.9.13/src/main.c    Mon Jul 17 20:23:59 1995
  2498. ***************
  2499. *** 16,22 ****
  2500.    * License along with this library; if not, write to the Free
  2501.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2502.    *
  2503. !  * This file is version 0.9.12 of 28-Apr-95
  2504.    * Check for the latest version of this package via anonymous ftp at
  2505.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2506.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2507. --- 16,22 ----
  2508.    * License along with this library; if not, write to the Free
  2509.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2510.    *
  2511. !  * This file is version 0.9.13 of 17-July-95
  2512.    * Check for the latest version of this package via anonymous ftp at
  2513.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2514.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2515. ***************
  2516. *** 444,450 ****
  2517.           option.total_size);
  2518.   
  2519.     initialize_system ();
  2520. -   read_help_index (HELPDIR, "index");
  2521.   
  2522.     /* If a dictionary image was built and saved, quit now: */
  2523.     if (option.save_dict)
  2524. --- 444,449 ----
  2525. Only in pfe-0.9.13/src: main.o
  2526. diff -cbr pfe-0-9.12/src/memory.c pfe-0.9.13/src/memory.c
  2527. *** pfe-0-9.12/src/memory.c    Fri Apr 28 18:59:14 1995
  2528. --- pfe-0.9.13/src/memory.c    Mon Jul 17 20:23:59 1995
  2529. ***************
  2530. *** 16,22 ****
  2531.    * License along with this library; if not, write to the Free
  2532.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2533.    *
  2534. !  * This file is version 0.9.12 of 28-Apr-95
  2535.    * Check for the latest version of this package via anonymous ftp at
  2536.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2537.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2538. --- 16,22 ----
  2539.    * License along with this library; if not, write to the Free
  2540.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2541.    *
  2542. !  * This file is version 0.9.13 of 17-July-95
  2543.    * Check for the latest version of this package via anonymous ftp at
  2544.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2545.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2546. Only in pfe-0.9.13/src: memory.o
  2547. diff -cbr pfe-0-9.12/src/misc.c pfe-0.9.13/src/misc.c
  2548. *** pfe-0-9.12/src/misc.c    Fri Apr 28 18:59:14 1995
  2549. --- pfe-0.9.13/src/misc.c    Mon Jul 17 20:23:59 1995
  2550. ***************
  2551. *** 16,22 ****
  2552.    * License along with this library; if not, write to the Free
  2553.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2554.    *
  2555. !  * This file is version 0.9.12 of 28-Apr-95
  2556.    * Check for the latest version of this package via anonymous ftp at
  2557.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2558.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2559. --- 16,22 ----
  2560.    * License along with this library; if not, write to the Free
  2561.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2562.    *
  2563. !  * This file is version 0.9.13 of 17-July-95
  2564.    * Check for the latest version of this package via anonymous ftp at
  2565.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2566.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2567. ***************
  2568. *** 140,151 ****
  2569. --- 140,157 ----
  2570.   
  2571.   code (smudge)            /* SMUDGE (modified from FIG definition) */
  2572.   {                /* FIG definition toggles the bit! */
  2573. +   if (LAST)
  2574.       *LAST |= SMUDGED;
  2575. +   else
  2576. +     tHrow (THROW_ARG_TYPE);
  2577.   }
  2578.   
  2579.   code (unsmudge)            /* UNSMUDGE (turn smudge-bit off) */
  2580.   {                /* neccessary because SMUDGE modified */
  2581. +   if (LAST)
  2582.       *LAST &= ~SMUDGED;
  2583. +   else
  2584. +     tHrow (THROW_ARG_TYPE);
  2585.   }
  2586.   
  2587.   /************************************************************************/
  2588. ***************
  2589. *** 538,543 ****
  2590. --- 544,583 ----
  2591.     outs (warranty_string);
  2592.   }
  2593.   
  2594. + Code (show_status)        /* ( --- ) display internal variables */
  2595. + {
  2596. +   cr_();
  2597. +   dot_version_();
  2598. +   cr_();
  2599. +   dot_pfe_date_();
  2600. +   cr_();
  2601. +   outf ("\nMemory overview:");
  2602. +   dot_memory_();
  2603. +   outf ("\nsearch path for source files:         %s", option.incpaths);
  2604. +   outf ("\nextensions for source files:          %s", option.incext);
  2605. +   outf ("\nsearch path for block files:          %s", option.blkpaths);
  2606. +   outf ("\nextensions for block files:           %s", option.blkext);
  2607. +   outf ("\nsearching help files in:              %s", HELPDIR);
  2608. +   outf ("\neditor called by EDIT-TEXT:           %s", option.editor);
  2609. +   cr_();
  2610. +   outf ("\nmaximum number of open files:         %u", option.max_files);
  2611. +   outf ("\nmaximum simultaneous interpretive S\"  %u", option.pockets);
  2612. +   outf ("\ndictionary threads configured         %u", 1<<LD_THREADS);
  2613. +   outf ("\nmaximum length of search order        %u", ORDER_LEN);
  2614. +   cr_();
  2615. +   outf ("\nText screen size:                     %dx%d", rows, cols);
  2616. +   cr_();
  2617. + #define flag(X) ((X) ? "ON" : "OFF")
  2618. +   outf ("\nLOWER-CASE    %s", flag (LOWER_CASE));
  2619. +   outf ("\nLOWER-CASE-FN %s", flag (LOWER_CASE_FN));
  2620. +   outf ("\nRESET-ORDER   %s", flag (RESET_ORDER));
  2621. +   outf ("\nREDEFINED-MSG %s", flag (REDEFINED_MSG));
  2622. +   outf ("\nFLOAT-INPUT   %s", flag (FLOAT_INPUT));
  2623. + #undef flag
  2624. +   outf ("\nPRECISION     %d", PRECISION);
  2625. +   space_();
  2626. + }
  2627.   /************************************************************************/
  2628.   /* vectorized I/O                                                       */
  2629.   /************************************************************************/
  2630. ***************
  2631. *** 956,966 ****
  2632. --- 996,1012 ----
  2633.   COMPILES (system_quote, system_quote_execution,
  2634.         SKIPS_STRING, DEFAULT_STYLE);
  2635.   
  2636. + Code (raise)            /* sends signal to itself */
  2637. + {
  2638. +   raise (*sp++);
  2639. + }
  2640.   Code (signal)            /* xt1 n --- xt2 ; install signal handler */
  2641.   {                /* return old signal handler */
  2642.     sp[1] = (Cell) forth_signal (sp[0], (Xt) sp[1]);
  2643.     sp++;
  2644.   }
  2645.   /* *INDENT-OFF* */
  2646.   LISTWORDS (misc) =
  2647.   {
  2648. ***************
  2649. *** 1028,1033 ****
  2650. --- 1074,1080 ----
  2651.     OC ("OF_MAGIC",    OF_MAGIC),
  2652.     CO ("FLIT",        f_literal_execution),
  2653.     SV ("F0",        sys.f0),
  2654. +   CO ("SHOW-STATUS",    show_status),
  2655.     SV ("LOWER-CASE",    LOWER_CASE),
  2656.     SV ("LOWER-CASE-FN",    LOWER_CASE_FN),
  2657.     SV ("REDEFINED-MSG",    REDEFINED_MSG),
  2658. ***************
  2659. *** 1157,1162 ****
  2660. --- 1204,1210 ----
  2661.     CO ("INCLUDE",    include),
  2662.     CO ("SYSTEM",        system),
  2663.     CS ("SYSTEM\"",    system_quote),
  2664. +   CO ("RAISE",        raise),
  2665.     CO ("SIGNAL",        signal),
  2666.   };
  2667.   COUNTWORDS (misc, "Compatibility + miscellaneous");
  2668. Only in pfe-0.9.13/src: misc.o
  2669. diff -cbr pfe-0-9.12/src/missing.h pfe-0.9.13/src/missing.h
  2670. *** pfe-0-9.12/src/missing.h    Fri Apr 28 18:59:06 1995
  2671. --- pfe-0.9.13/src/missing.h    Mon Jul 17 20:23:51 1995
  2672. ***************
  2673. *** 16,22 ****
  2674.    * License along with this library; if not, write to the Free
  2675.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2676.    *
  2677. !  * This file is version 0.9.12 of 28-Apr-95
  2678.    * Check for the latest version of this package via anonymous ftp at
  2679.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2680.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2681. --- 16,22 ----
  2682.    * License along with this library; if not, write to the Free
  2683.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2684.    *
  2685. !  * This file is version 0.9.13 of 17-July-95
  2686.    * Check for the latest version of this package via anonymous ftp at
  2687.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2688.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2689. diff -cbr pfe-0-9.12/src/nonansi.h pfe-0.9.13/src/nonansi.h
  2690. *** pfe-0-9.12/src/nonansi.h    Fri Apr 28 18:59:06 1995
  2691. --- pfe-0.9.13/src/nonansi.h    Mon Jul 17 20:23:51 1995
  2692. ***************
  2693. *** 16,22 ****
  2694.    * License along with this library; if not, write to the Free
  2695.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2696.    *
  2697. !  * This file is version 0.9.12 of 28-Apr-95
  2698.    * Check for the latest version of this package via anonymous ftp at
  2699.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2700.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2701. --- 16,22 ----
  2702.    * License along with this library; if not, write to the Free
  2703.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2704.    *
  2705. !  * This file is version 0.9.13 of 17-July-95
  2706.    * Check for the latest version of this package via anonymous ftp at
  2707.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2708.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2709. ***************
  2710. *** 36,45 ****
  2711.   #ifndef __NONANSI_H
  2712.   #define __NONANSI_H
  2713.   
  2714. - #if defined HAVE_SYS_TYPES_H
  2715. - # include <sys/types.h>    /* fpos_t, size_t, time_t and less prominent friends */
  2716. - #endif
  2717.   #if defined HAVE_SYS_IOCTL_H
  2718.   # include <sys/ioctl.h>    /* structs and constants for low level tty access */
  2719.   #endif
  2720. --- 36,41 ----
  2721. ***************
  2722. *** 96,101 ****
  2723. --- 92,101 ----
  2724.   # include <io.h>    /* equivalent to unistd.h on some DOS like systems */
  2725.   #endif
  2726.   
  2727. + #if defined HAVE_LIBC_H    /* NeXT has this */
  2728. + # include <libc.h>
  2729. + #endif
  2730.   #if defined HAVE_CONIO_H
  2731.   # include <conio.h>    /* DOS like systems define cputs() here */
  2732.   #endif
  2733. ***************
  2734. *** 114,123 ****
  2735.   
  2736.   #if defined HAVE_STRINGS_H
  2737.   # include <strings.h>    /* place where old BSD systems keep bcopy() */
  2738. - #endif
  2739. - #if defined NeXTstep
  2740. - # include <libc.h>
  2741.   #endif
  2742.   
  2743.   #endif /* ndef __NONANSI_H */
  2744. --- 114,119 ----
  2745. diff -cbr pfe-0-9.12/src/options.h pfe-0.9.13/src/options.h
  2746. *** pfe-0-9.12/src/options.h    Fri Apr 28 18:59:06 1995
  2747. --- pfe-0.9.13/src/options.h    Mon Jul 17 20:23:51 1995
  2748. ***************
  2749. *** 16,22 ****
  2750.    * License along with this library; if not, write to the Free
  2751.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2752.    *
  2753. !  * This file is version 0.9.12 of 28-Apr-95
  2754.    * Check for the latest version of this package via anonymous ftp at
  2755.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2756.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2757. --- 16,22 ----
  2758.    * License along with this library; if not, write to the Free
  2759.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2760.    *
  2761. !  * This file is version 0.9.13 of 17-July-95
  2762.    * Check for the latest version of this package via anonymous ftp at
  2763.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2764.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2765. ***************
  2766. *** 42,64 ****
  2767.   #if defined DOS_FILENAMES    /* MS-DOS like file and path names */
  2768.   
  2769.   #if defined WATCOM
  2770. ! # define STR(X) X
  2771.   #else
  2772. ! # define STR(X) STRING(X)
  2773.   #endif
  2774.   
  2775.   # ifdef PREFIX
  2776. ! #   define ROOTDIR        STR (PREFIX)
  2777.   # else
  2778.   #   define ROOTDIR        "C:"
  2779.   # endif
  2780.   # ifdef PFELIB
  2781. ! #   define LIBDIR        STR (PFELIB)
  2782.   # else
  2783.   #   define LIBDIR        ROOTDIR"\\PFE"
  2784.   # endif
  2785.   # ifdef PFEHLP
  2786. ! #   define HELPDIR        STR (PFEHLP)
  2787.   # else
  2788.   #   define HELPDIR        LIBDIR"\\HELP"
  2789.   # endif
  2790. --- 42,64 ----
  2791.   #if defined DOS_FILENAMES    /* MS-DOS like file and path names */
  2792.   
  2793.   #if defined WATCOM
  2794. ! # define _STR_(X) X
  2795.   #else
  2796. ! # define _STR_(X) STRING1(X)
  2797.   #endif
  2798.   
  2799.   # ifdef PREFIX
  2800. ! #   define ROOTDIR        _STR_(PREFIX)
  2801.   # else
  2802.   #   define ROOTDIR        "C:"
  2803.   # endif
  2804.   # ifdef PFELIB
  2805. ! #   define LIBDIR        _STR_ (PFELIB)
  2806.   # else
  2807.   #   define LIBDIR        ROOTDIR"\\PFE"
  2808.   # endif
  2809.   # ifdef PFEHLP
  2810. ! #   define HELPDIR        _STR_ (PFEHLP)
  2811.   # else
  2812.   #   define HELPDIR        LIBDIR"\\HELP"
  2813.   # endif
  2814. ***************
  2815. *** 68,74 ****
  2816.   # define INC_PATHS        ";"LIBDIR"\\INCLUDE"
  2817.   # define INC_EXTENSIONS        ";.PFE;.FS;.4TH;.FTH"
  2818.   # define BLK_PATHS        INC_PATHS
  2819. ! # define BLK_EXTENSIONS        ";.BLK;.SCR"
  2820.   # define PFERC_FILE        "PFE0.RC"
  2821.   # define DEFAULT_BLKFILE    "PFE.BLK"
  2822.   # define LLCMD            "DIR"
  2823. --- 68,74 ----
  2824.   # define INC_PATHS        ";"LIBDIR"\\INCLUDE"
  2825.   # define INC_EXTENSIONS        ";.PFE;.FS;.4TH;.FTH"
  2826.   # define BLK_PATHS        INC_PATHS
  2827. ! # define BLK_EXTENSIONS        ";.BLK;.SCR;.FB"
  2828.   # define PFERC_FILE        "PFE0.RC"
  2829.   # define DEFAULT_BLKFILE    "PFE.BLK"
  2830.   # define LLCMD            "DIR"
  2831. ***************
  2832. *** 77,93 ****
  2833.   #elif defined UNIX_FILENAMES    /* UNIX-like file and path names */
  2834.   
  2835.   # ifdef PREFIX
  2836. ! #   define ROOTDIR        STRING (PREFIX)
  2837.   # else
  2838.   #   define ROOTDIR        "/usr/local"
  2839.   # endif
  2840.   # ifdef PFELIB
  2841. ! #   define LIBDIR        STRING (PFELIB)
  2842.   # else
  2843.   #   define LIBDIR        ROOTDIR"/lib/pfe"
  2844.   # endif
  2845.   # ifdef PFEHLP
  2846. ! #   define HELPDIR        STRING (PFEHLP)
  2847.   # else
  2848.   #   define HELPDIR        LIBDIR"/help"
  2849.   # endif
  2850. --- 77,93 ----
  2851.   #elif defined UNIX_FILENAMES    /* UNIX-like file and path names */
  2852.   
  2853.   # ifdef PREFIX
  2854. ! #   define ROOTDIR        STRING1 (PREFIX)
  2855.   # else
  2856.   #   define ROOTDIR        "/usr/local"
  2857.   # endif
  2858.   # ifdef PFELIB
  2859. ! #   define LIBDIR        STRING1 (PFELIB)
  2860.   # else
  2861.   #   define LIBDIR        ROOTDIR"/lib/pfe"
  2862.   # endif
  2863.   # ifdef PFEHLP
  2864. ! #   define HELPDIR        STRING1 (PFEHLP)
  2865.   # else
  2866.   #   define HELPDIR        LIBDIR"/help"
  2867.   # endif
  2868. ***************
  2869. *** 97,103 ****
  2870.   # define INC_PATHS        ":~/.pfe:"LIBDIR"/include"
  2871.   # define INC_EXTENSIONS        ":.pfe:.fs:.4th:.fth:.forth"
  2872.   # define BLK_PATHS        INC_PATHS
  2873. ! # define BLK_EXTENSIONS        ":.blk:.scr"
  2874.   # define PFERC_FILE        "~/.pferc"
  2875.   # define DEFAULT_BLKFILE    "pfe.blk"
  2876.   # define LLCMD            "ls -alF"
  2877. --- 97,103 ----
  2878.   # define INC_PATHS        ":~/.pfe:"LIBDIR"/include"
  2879.   # define INC_EXTENSIONS        ":.pfe:.fs:.4th:.fth:.forth"
  2880.   # define BLK_PATHS        INC_PATHS
  2881. ! # define BLK_EXTENSIONS        ":.blk:.scr:.fb"
  2882.   # define PFERC_FILE        "~/.pferc"
  2883.   # define DEFAULT_BLKFILE    "pfe.blk"
  2884.   # define LLCMD            "ls -alF"
  2885. Only in pfe-0.9.13/src: pfe
  2886. diff -cbr pfe-0-9.12/src/preload.h pfe-0.9.13/src/preload.h
  2887. *** pfe-0-9.12/src/preload.h    Fri Apr 28 18:59:07 1995
  2888. --- pfe-0.9.13/src/preload.h    Mon Jul 17 20:23:52 1995
  2889. ***************
  2890. *** 16,22 ****
  2891.    * License along with this library; if not, write to the Free
  2892.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2893.    *
  2894. !  * This file is version 0.9.12 of 28-Apr-95
  2895.    * Check for the latest version of this package via anonymous ftp at
  2896.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2897.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2898. --- 16,22 ----
  2899.    * License along with this library; if not, write to the Free
  2900.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2901.    *
  2902. !  * This file is version 0.9.13 of 17-July-95
  2903.    * Check for the latest version of this package via anonymous ftp at
  2904.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2905.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2906. ***************
  2907. *** 127,134 ****
  2908. --- 127,139 ----
  2909.   #define    SV(NM,VAR)    { "\101"NM, (pCode)&(VAR) }
  2910.   #define    SC(NM,VAR)    { "\102"NM, (pCode)&(VAR) }
  2911.   
  2912. + #if __IBMC__ && __OS2__    /* IBM C Set/2 thinks OFFSET_OF is no constant expr */
  2913. + #define    DV(NM,MEMBER)    { "\103"NM, (pCode)do_##MEMBER }
  2914. + #define    DC(NM,MEMBER)    { "\104"NM, (pCode)do_##MEMBER }
  2915. + #else
  2916.   #define    DV(NM,MEMBER)    { "\103"NM, (pCode)OFFSET_OF(Dict, MEMBER) }
  2917.   #define    DC(NM,MEMBER)    { "\104"NM, (pCode)OFFSET_OF(Dict, MEMBER) }
  2918. + #endif
  2919.   
  2920.   #define OV(NM)        { "\105"NM, (pCode)0) }
  2921.   #define    OC(NM,VAL)    { "\106"NM, (pCode)(VAL) }
  2922. diff -cbr pfe-0-9.12/src/search.c pfe-0.9.13/src/search.c
  2923. *** pfe-0-9.12/src/search.c    Fri Apr 28 18:59:14 1995
  2924. --- pfe-0.9.13/src/search.c    Mon Jul 17 20:24:00 1995
  2925. ***************
  2926. *** 16,22 ****
  2927.    * License along with this library; if not, write to the Free
  2928.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2929.    *
  2930. !  * This file is version 0.9.12 of 28-Apr-95
  2931.    * Check for the latest version of this package via anonymous ftp at
  2932.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2933.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2934. --- 16,22 ----
  2935.    * License along with this library; if not, write to the Free
  2936.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2937.    *
  2938. !  * This file is version 0.9.13 of 17-July-95
  2939.    * Check for the latest version of this package via anonymous ftp at
  2940.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2941.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2942. Only in pfe-0.9.13/src: search.o
  2943. diff -cbr pfe-0-9.12/src/shell.c pfe-0.9.13/src/shell.c
  2944. *** pfe-0-9.12/src/shell.c    Fri Apr 28 18:59:15 1995
  2945. --- pfe-0.9.13/src/shell.c    Mon Jul 17 20:24:00 1995
  2946. ***************
  2947. *** 16,22 ****
  2948.    * License along with this library; if not, write to the Free
  2949.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2950.    *
  2951. !  * This file is version 0.9.12 of 28-Apr-95
  2952.    * Check for the latest version of this package via anonymous ftp at
  2953.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2954.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2955. --- 16,22 ----
  2956.    * License along with this library; if not, write to the Free
  2957.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2958.    *
  2959. !  * This file is version 0.9.13 of 17-July-95
  2960.    * Check for the latest version of this package via anonymous ftp at
  2961.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2962.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2963. ***************
  2964. *** 179,185 ****
  2965.   static int
  2966.   cp (const char *src, const char *dst)
  2967.   {
  2968. !   return copy (src, dst, LONG_MAX) == (fpos_t)-1;
  2969.   }
  2970.   
  2971.   static int
  2972. --- 179,185 ----
  2973.   static int
  2974.   cp (const char *src, const char *dst)
  2975.   {
  2976. !   return copy (src, dst, LONG_MAX) == -1;
  2977.   }
  2978.   
  2979.   static int
  2980. Only in pfe-0.9.13/src: shell.o
  2981. Only in pfe-0.9.13/src: showhelp
  2982. diff -cbr pfe-0-9.12/src/showhelp.c pfe-0.9.13/src/showhelp.c
  2983. *** pfe-0-9.12/src/showhelp.c    Fri Apr 28 18:59:15 1995
  2984. --- pfe-0.9.13/src/showhelp.c    Mon Jul 17 20:24:00 1995
  2985. ***************
  2986. *** 16,22 ****
  2987.    * License along with this library; if not, write to the Free
  2988.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2989.    *
  2990. !  * This file is version 0.9.12 of 28-Apr-95
  2991.    * Check for the latest version of this package via anonymous ftp at
  2992.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  2993.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  2994. --- 16,22 ----
  2995.    * License along with this library; if not, write to the Free
  2996.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  2997.    *
  2998. !  * This file is version 0.9.13 of 17-July-95
  2999.    * Check for the latest version of this package via anonymous ftp at
  3000.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3001.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3002. ***************
  3003. *** 46,52 ****
  3004. --- 46,54 ----
  3005.   #include <stdlib.h>
  3006.   #include <string.h>
  3007.   
  3008. + #include "missing.h"        /* SEEK_SET */
  3009.   #include "help.h"
  3010.   
  3011.   typedef char Path[PATH_LENGTH];
  3012.   static Path path;        /* common path name to all help files */
  3013. Only in pfe-0.9.13/src: showhelp.o
  3014. Only in pfe-0.9.13/src: showhlps.o
  3015. diff -cbr pfe-0-9.12/src/signals.c pfe-0.9.13/src/signals.c
  3016. *** pfe-0-9.12/src/signals.c    Fri Apr 28 18:59:15 1995
  3017. --- pfe-0.9.13/src/signals.c    Mon Jul 17 20:24:00 1995
  3018. ***************
  3019. *** 16,22 ****
  3020.    * License along with this library; if not, write to the Free
  3021.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3022.    *
  3023. !  * This file is version 0.9.12 of 28-Apr-95
  3024.    * Check for the latest version of this package via anonymous ftp at
  3025.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3026.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3027. --- 16,22 ----
  3028.    * License along with this library; if not, write to the Free
  3029.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3030.    *
  3031. !  * This file is version 0.9.13 of 17-July-95
  3032.    * Check for the latest version of this package via anonymous ftp at
  3033.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3034.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3035. ***************
  3036. *** 67,76 ****
  3037.     }
  3038.   Siginfo;
  3039.   
  3040.   #ifdef HAVE_SYS_SIGLIST
  3041. ! #define SIG(NM,CL,MSG)        { NM, CL, STRING (NM), SIG_DFL }
  3042.   #else
  3043. ! #define SIG(NM,CL,MSG)        { NM, CL, STRING (NM), MSG, SIG_DFL }
  3044.   #endif
  3045.   
  3046.   /*
  3047. --- 67,84 ----
  3048.     }
  3049.   Siginfo;
  3050.   
  3051. + #ifdef OLDCPP
  3052.   #ifdef HAVE_SYS_SIGLIST
  3053. ! #define SIG(NM,CL,MSG)        { NM, CL, "NM", SIG_DFL }
  3054.   #else
  3055. ! #define SIG(NM,CL,MSG)        { NM, CL, "NM", MSG, SIG_DFL }
  3056. ! #endif
  3057. ! #else
  3058. ! #ifdef HAVE_SYS_SIGLIST
  3059. ! #define SIG(NM,CL,MSG)        { NM, CL, #NM, SIG_DFL }
  3060. ! #else
  3061. ! #define SIG(NM,CL,MSG)        { NM, CL, #NM, MSG, SIG_DFL }
  3062. ! #endif
  3063.   #endif
  3064.   
  3065.   /*
  3066. ***************
  3067. *** 248,254 ****
  3068.     Siginfo *s;
  3069.     const char *msg;
  3070.   
  3071. ! #if !defined KEEPS_SIGNALS
  3072.     signal (sig, sig_handler);    /* reinstall handler */
  3073.   #endif
  3074.   #if defined EMX || defined WC_OS2V2
  3075. --- 256,262 ----
  3076.     Siginfo *s;
  3077.     const char *msg;
  3078.   
  3079. ! #if !KEEPS_SIGNALS
  3080.     signal (sig, sig_handler);    /* reinstall handler */
  3081.   #endif
  3082.   #if defined EMX || defined WC_OS2V2
  3083. ***************
  3084. *** 289,295 ****
  3085.   static void
  3086.   stop_hdl (int sig)
  3087.   {
  3088. ! #if !defined KEEPS_SIGNALS
  3089.     signal (sig, stop_hdl);
  3090.   #endif
  3091.     on_stop ();
  3092. --- 297,303 ----
  3093.   static void
  3094.   stop_hdl (int sig)
  3095.   {
  3096. ! #if !KEEPS_SIGNALS
  3097.     signal (sig, stop_hdl);
  3098.   #endif
  3099.     on_stop ();
  3100. ***************
  3101. *** 308,314 ****
  3102.   static void
  3103.   winchg_hdl (int sig)
  3104.   {
  3105. ! #if !defined KEEPS_SIGNALS
  3106.     signal (sig, winchg_hdl);
  3107.   #endif
  3108.     on_winchg ();
  3109. --- 316,322 ----
  3110.   static void
  3111.   winchg_hdl (int sig)
  3112.   {
  3113. ! #if !KEEPS_SIGNALS
  3114.     signal (sig, winchg_hdl);
  3115.   #endif
  3116.     on_winchg ();
  3117. ***************
  3118. *** 350,356 ****
  3119.       }
  3120.   #endif
  3121.   #ifdef SIGWINCH
  3122. ! #if defined KEEPS_SIGNALS
  3123.     signal (SIGWINCH, winchg_hdl);
  3124.   #endif
  3125.     winchg_hdl (SIGWINCH);
  3126. --- 358,364 ----
  3127.       }
  3128.   #endif
  3129.   #ifdef SIGWINCH
  3130. ! #ifdef KEEPS_SIGNALS
  3131.     signal (SIGWINCH, winchg_hdl);
  3132.   #endif
  3133.     winchg_hdl (SIGWINCH);
  3134. Only in pfe-0.9.13/src: signals.o
  3135. diff -cbr pfe-0-9.12/src/string.c pfe-0.9.13/src/string.c
  3136. *** pfe-0-9.12/src/string.c    Fri Apr 28 18:59:15 1995
  3137. --- pfe-0.9.13/src/string.c    Mon Jul 17 20:24:01 1995
  3138. ***************
  3139. *** 16,22 ****
  3140.    * License along with this library; if not, write to the Free
  3141.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3142.    *
  3143. !  * This file is version 0.9.12 of 28-Apr-95
  3144.    * Check for the latest version of this package via anonymous ftp at
  3145.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3146.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3147. --- 16,22 ----
  3148.    * License along with this library; if not, write to the Free
  3149.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3150.    *
  3151. !  * This file is version 0.9.13 of 17-July-95
  3152.    * Check for the latest version of this package via anonymous ftp at
  3153.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3154.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3155. Only in pfe-0.9.13/src: string.o
  3156. diff -cbr pfe-0-9.12/src/support.c pfe-0.9.13/src/support.c
  3157. *** pfe-0-9.12/src/support.c    Fri Apr 28 18:59:16 1995
  3158. --- pfe-0.9.13/src/support.c    Mon Jul 17 20:24:01 1995
  3159. ***************
  3160. *** 16,22 ****
  3161.    * License along with this library; if not, write to the Free
  3162.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3163.    *
  3164. !  * This file is version 0.9.12 of 28-Apr-95
  3165.    * Check for the latest version of this package via anonymous ftp at
  3166.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3167.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3168. --- 16,22 ----
  3169.    * License along with this library; if not, write to the Free
  3170.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3171.    *
  3172. !  * This file is version 0.9.13 of 17-July-95
  3173.    * Check for the latest version of this package via anonymous ftp at
  3174.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3175.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3176. ***************
  3177. *** 1139,1145 ****
  3178.   }
  3179.   
  3180.   int
  3181. ! reposition_file (File *fid, fpos_t pos)
  3182.   {
  3183.     fid->last_op = 0;
  3184.     return fseek (fid->f, pos, SEEK_SET) ? errno : 0;
  3185. --- 1139,1145 ----
  3186.   }
  3187.   
  3188.   int
  3189. ! reposition_file (File *fid, long pos)
  3190.   {
  3191.     fid->last_op = 0;
  3192.     return fseek (fid->f, pos, SEEK_SET) ? errno : 0;
  3193. ***************
  3194. *** 1158,1164 ****
  3195.       case FMODE_WOB:
  3196.         return 0;
  3197.       }
  3198. !   if (!fid->last_op < 0)    /* last operation was write? */
  3199.       fseek (fid->f, 0, SEEK_CUR);    /* then seek to this position */
  3200.     fid->last_op = 1;
  3201.     return 1;
  3202. --- 1158,1164 ----
  3203.       case FMODE_WOB:
  3204.         return 0;
  3205.       }
  3206. !   if (fid->last_op < 0)        /* last operation was write? */
  3207.       fseek (fid->f, 0, SEEK_CUR); /* then seek to this position */
  3208.     fid->last_op = 1;
  3209.     return 1;
  3210. ***************
  3211. *** 1177,1183 ****
  3212.       case FMODE_ROB:
  3213.         return 0;
  3214.       }
  3215. !   if (!fid->last_op > 0)    /* last operation was read? */
  3216.       fseek (fid->f, 0, SEEK_CUR);    /* then seek to this position */
  3217.     fid->last_op = -1;
  3218.     return 1;
  3219. --- 1177,1183 ----
  3220.       case FMODE_ROB:
  3221.         return 0;
  3222.       }
  3223. !   if (fid->last_op > 0)        /* last operation was read? */
  3224.       fseek (fid->f, 0, SEEK_CUR); /* then seek to this position */
  3225.     fid->last_op = -1;
  3226.     return 1;
  3227. ***************
  3228. *** 1211,1226 ****
  3229.   }
  3230.   
  3231.   int
  3232. ! resize_file (File *fid, fpos_t size)
  3233.   {
  3234. !   fpos_t pos;
  3235.     int r;
  3236.   
  3237.     if (fid == NULL || fid->f == NULL)
  3238.       tHrow (THROW_FILE_NEX);
  3239.   
  3240.     pos = ftell (fid->f);
  3241. !   if (pos == (fpos_t) - 1)
  3242.       return -1;
  3243.   
  3244.     fclose (fid->f);
  3245. --- 1211,1226 ----
  3246.   }
  3247.   
  3248.   int
  3249. ! resize_file (File *fid, long size)
  3250.   {
  3251. !   long pos;
  3252.     int r;
  3253.   
  3254.     if (fid == NULL || fid->f == NULL)
  3255.       tHrow (THROW_FILE_NEX);
  3256.   
  3257.     pos = ftell (fid->f);
  3258. !   if (pos == -1)
  3259.       return -1;
  3260.   
  3261.     fclose (fid->f);
  3262. ***************
  3263. *** 1643,1649 ****
  3264.   {                /* purpose: stop the inner interpreter */
  3265.     jumpbuf *buf = (jumpbuf *) *ip;
  3266.   
  3267. ! #ifdef REGRP
  3268.     buf->rp = rp;
  3269.   #endif
  3270.   #ifdef REGSP
  3271. --- 1643,1649 ----
  3272.   {                /* purpose: stop the inner interpreter */
  3273.     jumpbuf *buf = (jumpbuf *) *ip;
  3274.   
  3275. ! #ifdef REGRP            /* save global register variables */
  3276.     buf->rp = rp;
  3277.   #endif
  3278.   #ifdef REGSP
  3279. ***************
  3280. *** 1671,1678 ****
  3281.     ip = list;
  3282.     if (setjmp (stop.jmp))
  3283.       {
  3284. ! #ifdef REGRP
  3285. !       rp = stop.rp;
  3286.   #endif
  3287.   #ifdef REGSP
  3288.         sp = stop.sp;
  3289. --- 1671,1678 ----
  3290.     ip = list;
  3291.     if (setjmp (stop.jmp))
  3292.       {
  3293. ! #ifdef REGRP            /* restore global register variables */
  3294. !       rp = stop.rp;        /* clobbered by longjmp() */
  3295.   #endif
  3296.   #ifdef REGSP
  3297.         sp = stop.sp;
  3298. ***************
  3299. *** 1688,1699 ****
  3300.     for (;;)
  3301.       {
  3302.   #ifdef W
  3303. !       Xt w = *ip++;        /* ip is register but W isn't */
  3304. !       (*w) ();
  3305.   #else
  3306. !       W = *ip++;        /* ip and W are same: register or not */
  3307. !       (*W) ();
  3308.   #endif
  3309.       }
  3310.   }
  3311. --- 1688,1703 ----
  3312.     for (;;)
  3313.       {
  3314.   #ifdef W
  3315. !       Xt w;
  3316. ! #define NEXT w = *ip++, (*w) ()    /* ip is register but W isn't */
  3317.   #else
  3318. ! #define NEXT W = *ip++, (*W) ()    /* ip and W are same: register or not */
  3319. ! #endif
  3320. ! #ifdef UNROLL_NEXT        /* if it helps */
  3321. !       NEXT; NEXT; NEXT; NEXT;    /* do a little loop unrolling for speed */
  3322. !       NEXT; NEXT; NEXT; NEXT;
  3323. ! #else
  3324. !       NEXT;            /* on some machines it doesn't do any good */
  3325.   #endif
  3326.       }
  3327.   }
  3328. ***************
  3329. *** 2276,2281 ****
  3330. --- 2280,2287 ----
  3331.         && strcmp (option.block_file, DEFAULT_BLKFILE) != 0)
  3332.       fatal ("Can't find block file %s", option.block_file);
  3333.       }
  3334. +   read_help_index (HELPDIR, "index");
  3335.   
  3336.     REDEFINED_MSG = FALSE;
  3337.     init_dictionary (sys.dict, memsiz.dict);
  3338. diff -cbr pfe-0-9.12/src/support.h pfe-0.9.13/src/support.h
  3339. *** pfe-0-9.12/src/support.h    Fri Apr 28 18:59:07 1995
  3340. --- pfe-0.9.13/src/support.h    Mon Jul 17 20:23:52 1995
  3341. ***************
  3342. *** 16,22 ****
  3343.    * License along with this library; if not, write to the Free
  3344.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3345.    *
  3346. !  * This file is version 0.9.12 of 28-Apr-95
  3347.    * Check for the latest version of this package via anonymous ftp at
  3348.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3349.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3350. --- 16,22 ----
  3351.    * License along with this library; if not, write to the Free
  3352.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3353.    *
  3354. !  * This file is version 0.9.13 of 17-July-95
  3355.    * Check for the latest version of this package via anonymous ftp at
  3356.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3357.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3358. ***************
  3359. *** 143,153 ****
  3360.   
  3361.   /* files =================================================================== */
  3362.   
  3363. ! fpos_t fsize (FILE *f);
  3364. ! fpos_t size (const char *fn);
  3365. ! fpos_t copy (const char *dst, const char *src, fpos_t limit);
  3366.   int move (const char *src, const char *dst);
  3367. ! int resize (const char *fn, fpos_t size);
  3368.   
  3369.   int systemf (const char *s, ...);
  3370.   
  3371. --- 143,153 ----
  3372.   
  3373.   /* files =================================================================== */
  3374.   
  3375. ! long fsize (FILE *f);
  3376. ! long size (const char *fn);
  3377. ! long copy (const char *dst, const char *src, long limit);
  3378.   int move (const char *src, const char *dst);
  3379. ! int resize (const char *fn, long size);
  3380.   
  3381.   int systemf (const char *s, ...);
  3382.   
  3383. ***************
  3384. *** 157,166 ****
  3385.   File *create_file (const char *p, int n, int mode);
  3386.   File *open_file (const char *p, int n, int mode);
  3387.   int close_file (File *f);
  3388. ! int reposition_file (File *f, fpos_t pos);
  3389.   int read_file (void *p, uCell *n, File *f);
  3390.   int write_file (void *p, uCell n, File *f);
  3391. ! int resize_file (File *f, fpos_t size);
  3392.   int read_line (char *p, uCell *u, File *f, Cell *ior);
  3393.   
  3394.   /* source input ============================================================ */
  3395. --- 157,166 ----
  3396.   File *create_file (const char *p, int n, int mode);
  3397.   File *open_file (const char *p, int n, int mode);
  3398.   int close_file (File *f);
  3399. ! int reposition_file (File *f, long pos);
  3400.   int read_file (void *p, uCell *n, File *f);
  3401.   int write_file (void *p, uCell n, File *f);
  3402. ! int resize_file (File *f, long size);
  3403.   int read_line (char *p, uCell *u, File *f, Cell *ior);
  3404.   
  3405.   /* source input ============================================================ */
  3406. Only in pfe-0.9.13/src: support.o
  3407. diff -cbr pfe-0-9.12/src/sysdep.c pfe-0.9.13/src/sysdep.c
  3408. *** pfe-0-9.12/src/sysdep.c    Fri Apr 28 18:59:16 1995
  3409. --- pfe-0.9.13/src/sysdep.c    Mon Jul 17 20:24:01 1995
  3410. ***************
  3411. *** 16,22 ****
  3412.    * License along with this library; if not, write to the Free
  3413.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3414.    *
  3415. !  * This file is version 0.9.12 of 28-Apr-95
  3416.    * Check for the latest version of this package via anonymous ftp at
  3417.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3418.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3419. --- 16,22 ----
  3420.    * License along with this library; if not, write to the Free
  3421.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3422.    *
  3423. !  * This file is version 0.9.13 of 17-July-95
  3424.    * Check for the latest version of this package via anonymous ftp at
  3425.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3426.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3427. Only in pfe-0.9.13/src: sysdep.o
  3428. diff -cbr pfe-0-9.12/src/term-dj.c pfe-0.9.13/src/term-dj.c
  3429. *** pfe-0-9.12/src/term-dj.c    Fri Apr 28 18:59:17 1995
  3430. --- pfe-0.9.13/src/term-dj.c    Mon Jul 17 20:24:02 1995
  3431. ***************
  3432. *** 16,22 ****
  3433.    * License along with this library; if not, write to the Free
  3434.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3435.    *
  3436. !  * This file is version 0.9.12 of 28-Apr-95
  3437.    * Check for the latest version of this package via anonymous ftp at
  3438.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3439.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3440. --- 16,22 ----
  3441.    * License along with this library; if not, write to the Free
  3442.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3443.    *
  3444. !  * This file is version 0.9.13 of 17-July-95
  3445.    * Check for the latest version of this package via anonymous ftp at
  3446.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3447.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3448. diff -cbr pfe-0-9.12/src/term-emx.c pfe-0.9.13/src/term-emx.c
  3449. *** pfe-0-9.12/src/term-emx.c    Fri Apr 28 18:59:17 1995
  3450. --- pfe-0.9.13/src/term-emx.c    Mon Jul 17 20:24:02 1995
  3451. ***************
  3452. *** 16,22 ****
  3453.    * License along with this library; if not, write to the Free
  3454.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3455.    *
  3456. !  * This file is version 0.9.12 of 28-Apr-95
  3457.    * Check for the latest version of this package via anonymous ftp at
  3458.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3459.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3460. --- 16,22 ----
  3461.    * License along with this library; if not, write to the Free
  3462.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3463.    *
  3464. !  * This file is version 0.9.13 of 17-July-95
  3465.    * Check for the latest version of this package via anonymous ftp at
  3466.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3467.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3468. ***************
  3469. *** 99,105 ****
  3470.   
  3471.         if (c != -1)
  3472.       return c;
  3473. -       /* while (errno == EINTR); */
  3474.       }
  3475.   }
  3476.   
  3477. --- 99,104 ----
  3478. ***************
  3479. *** 114,129 ****
  3480.   void
  3481.   c_putc_noflush (char c)
  3482.   {
  3483. -   switch (c)
  3484. -     {
  3485. -     case '\r':            /* v_putc doesn't interpret carriage return */
  3486. -       {
  3487.       int x, y;
  3488.   
  3489.       v_getxy (&x, &y);
  3490.       v_gotoxy (0, y);
  3491. !     OUT = 0;
  3492.         }
  3493.         break;
  3494.       default:
  3495.         v_putc (c);
  3496. --- 113,136 ----
  3497.   void
  3498.   c_putc_noflush (char c)
  3499.   {
  3500.     int x, y;
  3501.   
  3502. +   switch (c)            /* v_putc doesn't interpret some */
  3503. +     {                /* very common control codes */
  3504. +     case '\r':
  3505.         v_getxy (&x, &y);
  3506.         v_gotoxy (0, y);
  3507. !       break;
  3508. !     case '\b':
  3509. !       c_goleft ();
  3510. !       break;
  3511. !     case '\t':
  3512. !       do
  3513. !       {
  3514. !     v_putc (' ');
  3515. !     v_getxy (&x, &y);
  3516.         }
  3517. +       while (x % 8);
  3518.         break;
  3519.       default:
  3520.         v_putc (c);
  3521. ***************
  3522. *** 168,175 ****
  3523.     col += x;
  3524.     row += y;
  3525.     v_gotoxy (col, row);
  3526. -   OUT = col;
  3527.   }
  3528.   /* *INDENT-OFF* */
  3529.   void c_goleft (void)        { addxy (-1,  0); }
  3530.   void c_goright (void)        { addxy ( 1,  0); }
  3531. --- 175,182 ----
  3532.     col += x;
  3533.     row += y;
  3534.     v_gotoxy (col, row);
  3535.   }
  3536.   /* *INDENT-OFF* */
  3537.   void c_goleft (void)        { addxy (-1,  0); }
  3538.   void c_goright (void)        { addxy ( 1,  0); }
  3539. diff -cbr pfe-0-9.12/src/term-wat.c pfe-0.9.13/src/term-wat.c
  3540. *** pfe-0-9.12/src/term-wat.c    Fri Apr 28 18:59:17 1995
  3541. --- pfe-0.9.13/src/term-wat.c    Mon Jul 17 20:24:02 1995
  3542. ***************
  3543. *** 16,22 ****
  3544.    * License along with this library; if not, write to the Free
  3545.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3546.    *
  3547. !  * This file is version 0.9.12 of 28-Apr-95
  3548.    * Check for the latest version of this package via anonymous ftp at
  3549.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3550.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3551. --- 16,22 ----
  3552.    * License along with this library; if not, write to the Free
  3553.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3554.    *
  3555. !  * This file is version 0.9.13 of 17-July-95
  3556.    * Check for the latest version of this package via anonymous ftp at
  3557.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3558.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3559. diff -cbr pfe-0-9.12/src/term.c pfe-0.9.13/src/term.c
  3560. *** pfe-0-9.12/src/term.c    Fri Apr 28 18:59:17 1995
  3561. --- pfe-0.9.13/src/term.c    Mon Jul 17 20:24:02 1995
  3562. ***************
  3563. *** 16,22 ****
  3564.    * License along with this library; if not, write to the Free
  3565.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3566.    *
  3567. !  * This file is version 0.9.12 of 28-Apr-95
  3568.    * Check for the latest version of this package via anonymous ftp at
  3569.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3570.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3571. --- 16,22 ----
  3572.    * License along with this library; if not, write to the Free
  3573.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3574.    *
  3575. !  * This file is version 0.9.13 of 17-July-95
  3576.    * Check for the latest version of this package via anonymous ftp at
  3577.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3578.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3579. diff -cbr pfe-0-9.12/src/term.h pfe-0.9.13/src/term.h
  3580. *** pfe-0-9.12/src/term.h    Fri Apr 28 18:59:07 1995
  3581. --- pfe-0.9.13/src/term.h    Mon Jul 17 20:23:52 1995
  3582. ***************
  3583. *** 16,22 ****
  3584.    * License along with this library; if not, write to the Free
  3585.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3586.    *
  3587. !  * This file is version 0.9.12 of 28-Apr-95
  3588.    * Check for the latest version of this package via anonymous ftp at
  3589.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3590.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3591. --- 16,22 ----
  3592.    * License along with this library; if not, write to the Free
  3593.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3594.    *
  3595. !  * This file is version 0.9.13 of 17-July-95
  3596.    * Check for the latest version of this package via anonymous ftp at
  3597.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3598.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3599. Only in pfe-0.9.13/src: term.o
  3600. diff -cbr pfe-0-9.12/src/termunix.c pfe-0.9.13/src/termunix.c
  3601. *** pfe-0-9.12/src/termunix.c    Fri Apr 28 18:59:18 1995
  3602. --- pfe-0.9.13/src/termunix.c    Mon Jul 17 20:24:03 1995
  3603. ***************
  3604. *** 16,22 ****
  3605.    * License along with this library; if not, write to the Free
  3606.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3607.    *
  3608. !  * This file is version 0.9.12 of 28-Apr-95
  3609.    * Check for the latest version of this package via anonymous ftp at
  3610.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3611.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3612. --- 16,22 ----
  3613.    * License along with this library; if not, write to the Free
  3614.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3615.    *
  3616. !  * This file is version 0.9.13 of 17-July-95
  3617.    * Check for the latest version of this package via anonymous ftp at
  3618.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3619.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3620. ***************
  3621. *** 166,172 ****
  3622.   static struct termios tty_system;
  3623.   #define tty_save()    tcgetattr (STDIN_FILENO, &tty_system)
  3624.   #define tty_restore()    tcsetattr (STDIN_FILENO, TCSAFLUSH, &tty_system)
  3625. ! #define tty_ospeed    (tty_system.c_cflag & CBAUD)
  3626.   
  3627.   int
  3628.   tty_interrupt_key (char ch)
  3629. --- 166,176 ----
  3630.   static struct termios tty_system;
  3631.   #define tty_save()    tcgetattr (STDIN_FILENO, &tty_system)
  3632.   #define tty_restore()    tcsetattr (STDIN_FILENO, TCSAFLUSH, &tty_system)
  3633. ! #ifdef CBAUD
  3634. ! # define tty_ospeed    (tty_system.c_cflag & CBAUD)
  3635. ! #else
  3636. ! # define tty_ospeed    (tty_system.c_ospeed)
  3637. ! #endif
  3638.   
  3639.   int
  3640.   tty_interrupt_key (char ch)
  3641. ***************
  3642. *** 186,197 ****
  3643.       return -1;
  3644.     if (tcgetattr (STDIN_FILENO, &tty) != 0)
  3645.       return -1;
  3646.     if (ch)
  3647.       tty.c_iflag |= BRKINT;
  3648.     else
  3649.       tty.c_iflag &= ~BRKINT;
  3650. -   old = tty.c_cc[VINTR];
  3651.     tty.c_cc[VINTR] = ch;
  3652.     tcsetattr (0, TCSAFLUSH, &tty);
  3653.     return old;
  3654.   }
  3655. --- 190,206 ----
  3656.       return -1;
  3657.     if (tcgetattr (STDIN_FILENO, &tty) != 0)
  3658.       return -1;
  3659. +   old = tty.c_cc[VINTR];
  3660.     if (ch)
  3661. +     {
  3662.         tty.c_iflag |= BRKINT;
  3663. +       tty.c_cc[VINTR] = 0xFF;
  3664. +     }
  3665.     else
  3666. +     {
  3667.         tty.c_iflag &= ~BRKINT;
  3668.         tty.c_cc[VINTR] = ch;
  3669. +     }
  3670.     tcsetattr (0, TCSAFLUSH, &tty);
  3671.     return old;
  3672.   }
  3673. ***************
  3674. *** 564,569 ****
  3675. --- 573,580 ----
  3676.     /* rawkey_string [EKEY_enter - EKEY_k1] = "\r"; */
  3677.     for (i = 0; i < DIM (tcctlcode); i++)
  3678.       control_string[i] = tgetstr (tcctlcode[i], &tctop);
  3679. +   if (control_string [cursor_left] == NULL)
  3680. +     control_string [cursor_left] = "\b";
  3681.   
  3682.   #if defined HAVE_OSPEED
  3683.     {
  3684. ***************
  3685. *** 652,657 ****
  3686. --- 663,670 ----
  3687.     KINIT (kC, key_clear);    /* clear screen key */
  3688.   
  3689.   #undef KINIT
  3690. +   if (cursor_left == NULL)
  3691. +     cursor_left = "\b";
  3692.     return 1;
  3693.   }
  3694.   
  3695. Only in pfe-0.9.13/src: termunix.o
  3696. diff -cbr pfe-0-9.12/src/toolkit.c pfe-0.9.13/src/toolkit.c
  3697. *** pfe-0-9.12/src/toolkit.c    Fri Apr 28 18:59:18 1995
  3698. --- pfe-0.9.13/src/toolkit.c    Mon Jul 17 20:24:03 1995
  3699. ***************
  3700. *** 16,22 ****
  3701.    * License along with this library; if not, write to the Free
  3702.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3703.    *
  3704. !  * This file is version 0.9.12 of 28-Apr-95
  3705.    * Check for the latest version of this package via anonymous ftp at
  3706.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3707.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3708. --- 16,22 ----
  3709.    * License along with this library; if not, write to the Free
  3710.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3711.    *
  3712. !  * This file is version 0.9.13 of 17-July-95
  3713.    * Check for the latest version of this package via anonymous ftp at
  3714.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3715.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3716. ***************
  3717. *** 234,240 ****
  3718.     CO ("DUMP",        dump),
  3719.     CO ("SEE",        see),
  3720.     CO ("WORDS",        words),
  3721. !   CO ("AHEAD",        ahead),
  3722.     CO ("BYE",        bye),
  3723.     CO ("CS-PICK",    cs_pick),
  3724.     CO ("CS-ROLL",    cs_roll),
  3725. --- 234,240 ----
  3726.     CO ("DUMP",        dump),
  3727.     CO ("SEE",        see),
  3728.     CO ("WORDS",        words),
  3729. !   CI ("AHEAD",        ahead),
  3730.     CO ("BYE",        bye),
  3731.     CO ("CS-PICK",    cs_pick),
  3732.     CO ("CS-ROLL",    cs_roll),
  3733. Only in pfe-0.9.13/src: toolkit.o
  3734. diff -cbr pfe-0-9.12/src/types.h pfe-0.9.13/src/types.h
  3735. *** pfe-0-9.12/src/types.h    Fri Apr 28 18:59:07 1995
  3736. --- pfe-0.9.13/src/types.h    Mon Jul 17 20:23:52 1995
  3737. ***************
  3738. *** 16,22 ****
  3739.    * License along with this library; if not, write to the Free
  3740.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3741.    *
  3742. !  * This file is version 0.9.12 of 28-Apr-95
  3743.    * Check for the latest version of this package via anonymous ftp at
  3744.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3745.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3746. --- 16,22 ----
  3747.    * License along with this library; if not, write to the Free
  3748.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3749.    *
  3750. !  * This file is version 0.9.13 of 17-July-95
  3751.    * Check for the latest version of this package via anonymous ftp at
  3752.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3753.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3754. ***************
  3755. *** 42,47 ****
  3756. --- 42,52 ----
  3757.   #include <stdio.h>
  3758.   #endif
  3759.   
  3760. + #if defined HAVE_SYS_TYPES_H
  3761. + # include <sys/types.h>        /* size_t, time_t and friends */
  3762. + #endif
  3763.   typedef unsigned char Byte;    /* an 8-bit unsigned number */
  3764.   typedef unsigned short WORD;    /* a 16-bit unsigned number (probably) */
  3765.   
  3766. ***************
  3767. *** 74,80 ****
  3768.       signed char last_op;    /* -1 write, 0 none, 1 read */
  3769.       WORD len;            /* if stream: length of input line */
  3770.       uCell size;            /* if block file: size of file in blocks */
  3771. !     fpos_t pos;            /* a saved position, e.g. beginning of line */
  3772.       uCell n;            /* block in buffer or source line */
  3773.       Cell updated;        /* if block file: block updated? */
  3774.       char name[PATH_LENGTH];    /* file name */
  3775. --- 79,85 ----
  3776.       signed char last_op;    /* -1 write, 0 none, 1 read */
  3777.       WORD len;            /* if stream: length of input line */
  3778.       uCell size;            /* if block file: size of file in blocks */
  3779. !     long pos;            /* a saved position, e.g. beginning of line */
  3780.       uCell n;            /* block in buffer or source line */
  3781.       Cell updated;        /* if block file: block updated? */
  3782.       char name[PATH_LENGTH];    /* file name */
  3783. ***************
  3784. *** 86,92 ****
  3785.       Cell source_id;        /* SOURCE-ID */
  3786.       File *block_file;        /* which file is active? */
  3787.       uCell blk;            /* currently loaded block */
  3788. !     fpos_t pos;            /* stream file: beginning of line in file */
  3789.       char *tib;            /* points to TIB or to EVALUATED string */
  3790.       uCell number_tib;        /* #TIB, length of string in TIB */
  3791.       uCell to_in;        /* input parsing position */
  3792. --- 91,97 ----
  3793.       Cell source_id;        /* SOURCE-ID */
  3794.       File *block_file;        /* which file is active? */
  3795.       uCell blk;            /* currently loaded block */
  3796. !     long pos;            /* stream file: beginning of line in file */
  3797.       char *tib;            /* points to TIB or to EVALUATED string */
  3798.       uCell number_tib;        /* #TIB, length of string in TIB */
  3799.       uCell to_in;        /* input parsing position */
  3800. ***************
  3801. *** 150,155 ****
  3802. --- 155,178 ----
  3803.       char *hld;            /* auxiliary pointer for number output */
  3804.       Cell dpl;            /* position of input decimal point */
  3805.     };
  3806. + #if defined __IBMC__ && defined __OS2__
  3807. + enum dictOffs            /* normally these are determined with */
  3808. +   {                /* OFFSET_OF, C Set/2 can't do that. */
  3809. +     do_dp        = 0,
  3810. +     do_fence        = do_dp + 4,
  3811. +     do_last        = do_fence + 4,
  3812. +     do_voc_link        = do_last + 4,
  3813. +     do_context        = do_voc_link + 4,
  3814. +     do_only        = 16 + 4 * ORDER_LEN,
  3815. +     do_current        = do_only + 4,
  3816. +     do_forth        = do_current + 4,
  3817. +     do_dforder        = do_forth + 4,
  3818. +     do_application    = do_dforder + 4 * ORDER_LEN,
  3819. +     do_hld        = do_application + 4,
  3820. +     do_dpl        = do_hld + 4
  3821. +   };
  3822. + #endif
  3823.   
  3824.   struct sysvar            /* all FORTH system variables */
  3825.     {
  3826. diff -cbr pfe-0-9.12/src/unix.c pfe-0.9.13/src/unix.c
  3827. *** pfe-0-9.12/src/unix.c    Fri Apr 28 18:59:18 1995
  3828. --- pfe-0.9.13/src/unix.c    Mon Jul 17 20:24:03 1995
  3829. ***************
  3830. *** 16,22 ****
  3831.    * License along with this library; if not, write to the Free
  3832.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3833.    *
  3834. !  * This file is version 0.9.12 of 28-Apr-95
  3835.    * Check for the latest version of this package via anonymous ftp at
  3836.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3837.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3838. --- 16,22 ----
  3839.    * License along with this library; if not, write to the Free
  3840.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3841.    *
  3842. !  * This file is version 0.9.13 of 17-July-95
  3843.    * Check for the latest version of this package via anonymous ftp at
  3844.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3845.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3846. Only in pfe-0.9.13/src: unix.o
  3847. diff -cbr pfe-0-9.12/src/version.c pfe-0.9.13/src/version.c
  3848. *** pfe-0-9.12/src/version.c    Fri Apr 28 18:59:19 1995
  3849. --- pfe-0.9.13/src/version.c    Mon Jul 17 20:24:03 1995
  3850. ***************
  3851. *** 16,22 ****
  3852.    * License along with this library; if not, write to the Free
  3853.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3854.    *
  3855. !  * This file is version 0.9.12 of 28-Apr-95
  3856.    * Check for the latest version of this package via anonymous ftp at
  3857.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3858.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3859. --- 16,22 ----
  3860.    * License along with this library; if not, write to the Free
  3861.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3862.    *
  3863. !  * This file is version 0.9.13 of 17-July-95
  3864.    * Check for the latest version of this package via anonymous ftp at
  3865.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3866.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3867. ***************
  3868. *** 38,44 ****
  3869.       "Version "VERSION" of "DATE"";
  3870.   
  3871.   char copyright_string [] =
  3872. !     "\nCopyright Dirk Uwe Zoller 1994.";
  3873.   
  3874.   char license_string [] =
  3875.       "\n"
  3876. --- 38,44 ----
  3877.       "Version "VERSION" of "DATE"";
  3878.   
  3879.   char copyright_string [] =
  3880. !     "\nCopyright Dirk Uwe Zoller 1995.";
  3881.   
  3882.   char license_string [] =
  3883.       "\n"
  3884. Only in pfe-0.9.13/src: version.o
  3885. diff -cbr pfe-0-9.12/src/virtual.h pfe-0.9.13/src/virtual.h
  3886. *** pfe-0-9.12/src/virtual.h    Fri Apr 28 18:59:08 1995
  3887. --- pfe-0.9.13/src/virtual.h    Mon Jul 17 20:23:53 1995
  3888. ***************
  3889. *** 16,22 ****
  3890.    * License along with this library; if not, write to the Free
  3891.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3892.    *
  3893. !  * This file is version 0.9.12 of 28-Apr-95
  3894.    * Check for the latest version of this package via anonymous ftp at
  3895.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3896.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3897. --- 16,22 ----
  3898.    * License along with this library; if not, write to the Free
  3899.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3900.    *
  3901. !  * This file is version 0.9.13 of 17-July-95
  3902.    * Check for the latest version of this package via anonymous ftp at
  3903.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3904.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3905. diff -cbr pfe-0-9.12/src/vocs.c pfe-0.9.13/src/vocs.c
  3906. *** pfe-0-9.12/src/vocs.c    Fri Apr 28 18:59:19 1995
  3907. --- pfe-0.9.13/src/vocs.c    Mon Jul 17 20:24:04 1995
  3908. ***************
  3909. *** 16,22 ****
  3910.    * License along with this library; if not, write to the Free
  3911.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3912.    *
  3913. !  * This file is version 0.9.12 of 28-Apr-95
  3914.    * Check for the latest version of this package via anonymous ftp at
  3915.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3916.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3917. --- 16,22 ----
  3918.    * License along with this library; if not, write to the Free
  3919.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3920.    *
  3921. !  * This file is version 0.9.13 of 17-July-95
  3922.    * Check for the latest version of this package via anonymous ftp at
  3923.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3924.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3925. Only in pfe-0.9.13/src: vocs.o
  3926. diff -cbr pfe-0-9.12/src/xception.c pfe-0.9.13/src/xception.c
  3927. *** pfe-0-9.12/src/xception.c    Fri Apr 28 18:59:19 1995
  3928. --- pfe-0.9.13/src/xception.c    Mon Jul 17 20:24:04 1995
  3929. ***************
  3930. *** 16,22 ****
  3931.    * License along with this library; if not, write to the Free
  3932.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3933.    *
  3934. !  * This file is version 0.9.12 of 28-Apr-95
  3935.    * Check for the latest version of this package via anonymous ftp at
  3936.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3937.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3938. --- 16,22 ----
  3939.    * License along with this library; if not, write to the Free
  3940.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3941.    *
  3942. !  * This file is version 0.9.13 of 17-July-95
  3943.    * Check for the latest version of this package via anonymous ftp at
  3944.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3945.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3946. Only in pfe-0.9.13/src: xception.o
  3947. diff -cbr pfe-0-9.12/src/yours.c pfe-0.9.13/src/yours.c
  3948. *** pfe-0-9.12/src/yours.c    Fri Apr 28 18:59:19 1995
  3949. --- pfe-0.9.13/src/yours.c    Mon Jul 17 20:24:04 1995
  3950. ***************
  3951. *** 16,22 ****
  3952.    * License along with this library; if not, write to the Free
  3953.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3954.    *
  3955. !  * This file is version 0.9.12 of 28-Apr-95
  3956.    * Check for the latest version of this package via anonymous ftp at
  3957.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3958.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3959. --- 16,22 ----
  3960.    * License along with this library; if not, write to the Free
  3961.    * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3962.    *
  3963. !  * This file is version 0.9.13 of 17-July-95
  3964.    * Check for the latest version of this package via anonymous ftp at
  3965.    *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  3966.    * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  3967. Only in pfe-0.9.13/src: yours.o
  3968. Only in pfe-0.9.13/test: checkans.fs
  3969. diff -cbr pfe-0-9.12/test/exceptn.4th pfe-0.9.13/test/exceptn.4th
  3970. *** pfe-0-9.12/test/exceptn.4th    Wed Apr 26 19:48:59 1995
  3971. --- pfe-0.9.13/test/exceptn.4th    Thu Jul 13 10:38:05 1995
  3972. ***************
  3973. *** 20,22 ****
  3974. --- 20,32 ----
  3975.   
  3976.   : UNDEF        S" :-) 0 Y " ;        UNDEF ' EVALUATE CATCH -13 = Y
  3977.                       2DROP  D
  3978. + \
  3979. + \ Test handling signals with Forth words.
  3980. + \
  3981. + CR
  3982. + : SIG-TERM-HDL    ." SIGTERM handled ok. " ;
  3983. + ' SIG-TERM-HDL SIGTERM SIGNAL .
  3984. + SIGTERM RAISE
  3985. + 0 SIGTERM SIGNAL ' SIG-TERM-HDL = Y
  3986. diff -cbr pfe-0-9.12/test/suite.4th pfe-0.9.13/test/suite.4th
  3987. *** pfe-0-9.12/test/suite.4th    Sat Apr 15 22:12:31 1995
  3988. --- pfe-0.9.13/test/suite.4th    Thu Jul  6 21:36:23 1995
  3989. ***************
  3990. *** 16,32 ****
  3991.   S" core.fr"   INCLUDED
  3992.   FORGET-TESTER/CORE
  3993.   
  3994. ! EXTENSIONS ALSO FORTH
  3995.   
  3996.   CR
  3997.   CR .( testing pfe extensions:)
  3998.   INCLUDE defs.4th
  3999.   WAIT
  4000.   
  4001. ! \ display environment
  4002.   INCLUDE environ.4th
  4003.   
  4004.   WAIT
  4005.   
  4006.   CR
  4007.   CR .( More tests:)
  4008. --- 16,47 ----
  4009.   S" core.fr"   INCLUDED
  4010.   FORGET-TESTER/CORE
  4011.   
  4012. ! CR
  4013. ! CR .( running checkans, a test for words missing from the ANS word sets)
  4014. ! CR .( =================================================================)
  4015. ! CR
  4016. ! MARKER FORGET-CHECKANS
  4017. ! S" checkans.fs" INCLUDED
  4018. ! FORGET-CHECKANS
  4019.   
  4020.   CR
  4021.   CR .( testing pfe extensions:)
  4022. + EXTENSIONS ALSO FORTH
  4023.   INCLUDE defs.4th
  4024.   WAIT
  4025.   
  4026. ! \ display status and environment
  4027. ! SHOW-STATUS
  4028. ! WAIT
  4029.   INCLUDE environ.4th
  4030. + WAIT
  4031.   
  4032. + \ test help
  4033. + HELP FE.
  4034.   WAIT
  4035.   
  4036.   CR
  4037.   CR .( More tests:)
  4038. Only in pfe-0.9.13/test: wordsets.fs
  4039.